日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
嵌入式Linux中ADB安裝教程(嵌入式linuxadb安裝)

嵌入式系統(tǒng)是一種特殊的計算機(jī)系統(tǒng),它通常被用來作為嵌入式設(shè)備的控制核心。嵌入式系統(tǒng)的特性包括緊湊的體積、較低的功耗、高可靠性和特定的實時性要求等。這些特性使得嵌入式系統(tǒng)在許多領(lǐng)域得到廣泛應(yīng)用,例如便攜式設(shè)備、智能家居、醫(yī)療設(shè)備等。

在嵌入式系統(tǒng)開發(fā)中,ADB(Android Debug Bridge)是一種非常常用的工具,它可以連接開發(fā)機(jī)和嵌入式設(shè)備,并進(jìn)行調(diào)試、安裝、卸載應(yīng)用程序等操作。但是在嵌入式Linux中,ADB并不是默認(rèn)安裝的,需要進(jìn)行手動安裝。本文將介紹在嵌入式Linux中安裝ADB的步驟。

步驟一:安裝開發(fā)工具鏈

在進(jìn)行ADB安裝之前,需要安裝開發(fā)工具鏈,以便能夠在嵌入式系統(tǒng)上進(jìn)行交叉編譯。開發(fā)工具鏈包含了交叉編譯器、庫等工具,可以用來編譯嵌入式系統(tǒng)的應(yīng)用程序。通常情況下,開發(fā)工具鏈的安裝方式與嵌入式系統(tǒng)的構(gòu)建方式有關(guān),因此本文不作贅述,讀者可以參考相關(guān)開發(fā)文檔進(jìn)行安裝。

步驟二:下載ADB源碼

在進(jìn)行ADB安裝之前,需要先下載ADB源碼。ADB源碼可以從Android官方網(wǎng)站上下載,地址為:https://android.googlesource.com/platform/system/core/+/eclr-release/adb。

下載完成后,將源碼文件解壓縮至任意目錄。在解壓縮過程中,可能會出現(xiàn)部分文件或目錄不被解壓的情況,這是由于ADB源碼依賴于其他源碼,解壓非完整源碼會導(dǎo)致編譯失敗。因此,在解壓縮之前,需要確認(rèn)所有的源碼文件都已經(jīng)下載完整。

步驟三:交叉編譯ADB

在完成步驟一和步驟二之后,可以開始進(jìn)行ADB的交叉編譯了。具體步驟如下:

1. 進(jìn)入ADB源碼目錄:cd adb

2. 設(shè)置編譯環(huán)境變量:

export CROSS_COMPILE=/bin/arm-linux-gnueabihf-

export CC=/bin/arm-linux-gnueabihf-gcc

export LD=/bin/arm-linux-gnueabihf-ld

export AR=/bin/arm-linux-gnueabihf-ar

其中,表示開發(fā)工具鏈所在的路徑。這些變量的作用分別是:

CROSS_COMPILE:指定交叉編譯器的路徑和前綴。

CC:指定交叉編譯器的路徑和名稱。

LD:指定鏈接器的路徑和名稱。

AR:指定靜態(tài)庫生成器的路徑和名稱。

3. 運行make命令編譯ADB:

make

編譯過程可能會比較漫長,取決于嵌入式系統(tǒng)的性能和編譯選項的設(shè)置。在編譯完成后,可以在out/host/linux-x86/bin目錄下找到adb可執(zhí)行文件。

步驟四:設(shè)置ADB環(huán)境變量

在完成編譯之后,需要將ADB的路徑加入環(huán)境變量中,以便在任意路徑下都可以使用ADB。在嵌入式Linux中,可以使用以下命令設(shè)置環(huán)境變量:

export PATH=$PATH:

其中,表示adb可執(zhí)行文件所在的路徑。

步驟五:測試ADB

在完成以上步驟后,可以在嵌入式系統(tǒng)上測試ADB是否已經(jīng)安裝成功??梢酝ㄟ^以下命令測試:

adb devices

如果輸出結(jié)果為“device”,則表示ADB已經(jīng)可以正常使用。如果輸出為空,或者顯示“unauthorized”,則表示設(shè)備和PC之間的連接存在問題,需要進(jìn)一步檢查設(shè)備和PC之間的連接是否正常。

成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù)!

怎樣在Ubuntu下安裝Android SDK/ADB

Ubuntu電腦安裝Android SDK/褲漏虛ADB   之一步,你要下載Linux版Android SDK的安裝或文件包,然后你需要從Android SDK Manager內(nèi)下載Platform Tools Package   請從Google官方獲取Android SDK安裝或文件包,通常情況,你下載的文件名為android-sdk_rxx-linux.tgz的形式,rxx代表版本,比如,r16版,即android-sdk_r16-linux.tgz,r24版,即android-sdk_r24-linux.tgz   請放置Android SDK安裝或文件包在你的用戶搜猜主目錄   胡燃在你的Ubuntu電腦上打開終端窗口   解壓Android SDK文件: cd ~ tar -zxvf android-sdk_r16-linux.tgz   在~/android-sdk-linux/tools字目錄,有一個叫做android的可執(zhí)行文件,盡管名字是android,但它實際上是Android SDK Manager   運行Android SDK Manager: ./~/android-sdk-linux/tools/android   選擇Android SDK Tools與Android SDK Platform-tools項,點Install packages安裝Platform Tools Package工具包。

  Ubuntu電腦安裝Android SDK/ADB

  之一步,你要下載Linux版Android SDK的安裝或文件包,然后你需要從Android SDK Manager內(nèi)下載Platform Tools

Package

  請從Google官方獲取Android

SDK安裝或文件包,通常情況,你下載的文件名為android-sdk_rxx-linux.tgz的形式,rxx代表版本,比如,r16版,即android-sdk_r16-linux.tgz,r24版,即android-sdk_r24-linux.tgz

  請放置Android SDK安裝或文件包在你的用戶主目錄

  在你的Ubuntu電腦上打開終端窗口

  解壓Android SDK文件:

cd ~

tar -zxvf android-sdk_r16-linux.tgz

  在~/android-sdk-linux/tools字目錄,有一個叫做android的可執(zhí)行文件,盡管名字是android,但它實際上是Android

SDK Manager

  運行Android SDK Manager:

./~/android-sdk-linux/tools/android

  選擇Android SDK

Tools與Android SDK Platform-tools項,點Install

packages安雹謹(jǐn)裝Platform Tools

Package工具包。包括ADB與Fastboot可執(zhí)行的文件在內(nèi)的工具包都會被下載,由于下載的文件較多而需要一定的時間,你能去喝點東西

  你下載的Platform Tools

Package工具包文件將位于新創(chuàng)建的~/android-sdk-linux/platform-tools目錄

  第二步,修改ADB與Fastboot可執(zhí)行文件的默認(rèn)PATH路徑環(huán)境。PATH環(huán)境變量可以是在~/.profile(或~/.bash_profile)或者~/.bashrc文件內(nèi)修改,~/.profile文件是讀取所有交互式Shell的登錄,~/.bashrc文件讀取所有非交互式Shell的登錄(如sftp),瞎肆高在大多數(shù)默認(rèn)情況下,~/.profile文件導(dǎo)入所有~/.bashrc文件的設(shè)置。PATH命令設(shè)定的改變必須包括/android-sdk-linux/tools與/android-sdk-linux/platform-tools目錄

  kevdog的PATH命令設(shè)定通過Ubuntu系統(tǒng)內(nèi)初始的默認(rèn)編輯器Gedit在~/.bashrc文件底部增加了一行:

export

PATH=${PATH}:${HOME}/android-sdk-linux/tools:${HOME}/android-sdk-linux/platform-tools

  第三步,我們需要為Ubuntu創(chuàng)建udev設(shè)備管理規(guī)則,從而讓設(shè)備在通磨尺過USB端口連接到電腦時能被正確地識別

  將設(shè)備連接到電腦,然后執(zhí)行命令:

lsu

  你會看到類似于下面的輸出信息:

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation

2.0 root hub

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 004

Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 005 Device 001:

ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 001 Device 063: ID 04e8:6860

Samsung Electronics Co., Ltd

  由于kevdog的設(shè)備是Samsung的某款設(shè)備,因此你能看到相應(yīng)的識別信息:

Bus 001 Device 063: ID

04e8:6860 Samsung Electronics Co., Ltd

  我們來解釋下上面的識別信息:

  Bus 001 Device

063,設(shè)備端的名稱是/dev/bus/u/001/063,即這個信息可以幫助我們確定設(shè)備端的名稱

  04e8,vendorID,即供貨商編號

  6860,productID,即產(chǎn)品編號

  使用設(shè)備端的名稱/dev/bus/u/001/063可以讓我們查詢設(shè)備的屬性,查詢這些屬性有時很有必要,因為udev設(shè)備管理匹配設(shè)備是基于特定標(biāo)準(zhǔn)的。為此,我們需要一個正確的udev設(shè)備匹配規(guī)則集,這個過程的之一步就是查詢能被連接或插入到我們規(guī)則集的準(zhǔn)則,這可以通過udevadm程序來實現(xiàn),并且有兩種方式現(xiàn),它們生成的輸出信息為我們的設(shè)備構(gòu)建udev設(shè)備管理規(guī)則:

  udevadm查詢udev設(shè)備管理規(guī)則方法1:

udevadm info -q all -n

根據(jù)原作者的實際情況,設(shè)備端名稱是/dev/bus/u/001/063,因此命令是:

udevadm info -q all -n /dev/bus/u/001/063

你會看到類似于下面的輸出信息:

$ udevadm info -q all -n /dev/bus/u/001/063

P:

/devices/pci0000:00/0000:00:1d.7/u1/1-8

N: bus/u/001/063

S:

libmtp-1-8

S: GalaxyNexus

E: UDEV_LOG=3

E:

DEVPATH=/devices/pci0000:00/0000:00:1d.7/u1/1-8

E: MAJOR=189

E:

MINOR=62

E: DEVNAME=/dev/bus/u/001/063

E: DEVTYPE=u_device

E:

DRIVER=u

E: PRODUCT=4e8/6860/216

E: TYPE=0/0/0

E: BUSNUM=001

E: DEVNUM=063

E: SUBSYSTEM=u

E: ID_MTP_DEVICE=1

E:

ID_MEDIA_PLAYER=samsung_galaxy-s2

E: ID_VENDOR=samsung

E:

ID_VENDOR_ENC=samsung

E: ID_VENDOR_ID=04e8

E: ID_MODEL=Galaxy

E:

ID_MODEL_ENC=Galaxy

E: ID_MODEL_ID=6860

E: ID_REVISION=0216

E:

ID_SERIAL=samsung_Galaxy_0146B

E:

ID_SERIAL_SHORT=0146B

E: ID_BUS=u

E:

ID_USB_INTERFACES=:ffff00:ff4201:

E: DEVLINKS=/dev/libmtp-1-8

/dev/GalaxyNexus

E: TAGS=:udev-acl:

我們使用的規(guī)則從有E:(E=ENV=Device

Property設(shè)備屬性值)的行開始

  udevadm查詢udev設(shè)備管理規(guī)則方法2:

udevadm info -a -p $(udevadm info -q path

-n )

根據(jù)原作者的實際情況,設(shè)備端名稱是/dev/bus/u/001/063,因此命令是:

udevadm info -a -p

$(udevadm info -q path -n /dev/bus/u/001/063)

你會看到類似于下面的輸出信息:

$ udevadm info -a -p $(udevadm info -q path -n /dev/bus/u/001/063)

Udevadm info starts with the device specified by the devpath and then

walks up the chain of parent devices. It prints for every device

found,

all possible attributes in the udev rules key format.

A rule to match, can

be composed by the attributes of the device

and the attributes from one

single parent device.

looking at device

‘/devices/pci0000:00/0000:00:1d.7/u1/1-8’:

KERNEL==”1-8″

SUBSYSTEM==”u”

DRIVER==”u”

ATTR{configuration}==””

ATTR{bNumInterfaces}==” 2″

ATTR{bConfigurationValue}==”1″

ATTR{bmAttributes}==”80″

ATTR{bMaxPower}==”500mA”

ATTR{urbnum}==”29″

ATTR{idVendor}==”04e8″

ATTR{idProduct}==”6860″

ATTR{bcdDevice}==”0216″

ATTR{bDeviceClass}==”00″

ATTR{bDeviceSubClass}==”00″

ATTR{bDeviceProtocol}==”00″

ATTR{bNumConfigurations}==”1″

ATTR{bMaxPacketSize0}==”64″

ATTR{speed}==”480″

ATTR{busnum}==”1″

ATTR{devnum}==”63″

ATTR{devpath}==”8″

ATTR{version}==” 2.00″

ATTR{maxchild}==”0″

ATTR{quirks}==”0x0″

ATTR{avoid_reset_quirk}==”0″

ATTR{authorized}==”1″

ATTR{manufacturer}==”samsung”

ATTR{product}==”Galaxy”

ATTR{serial}==”0146B”

looking at parent device ‘/devices/pci0000:00/0000:00:1d.7/u1’:

KERNELS==”u1″

SUBSYSTEMS==”u”

DRIVERS==”u”

ATTRS{configuration}==””

ATTRS{bNumInterfaces}==” 1″

ATTRS{bConfigurationValue}==”1″

ATTRS{bmAttributes}==”e0″

ATTRS{bMaxPower}==” 0mA”

ATTRS{urbnum}==”1403″

ATTRS{idVendor}==”1d6b”

ATTRS{idProduct}==”0002″

ATTRS{bcdDevice}==”0300″

ATTRS{bDeviceClass}==”09″

ATTRS{bDeviceSubClass}==”00″

ATTRS{bDeviceProtocol}==”00″

ATTRS{bNumConfigurations}==”1″

ATTRS{bMaxPacketSize0}==”64″

ATTRS{speed}==”480″

ATTRS{busnum}==”1″

ATTRS{devnum}==”1″

ATTRS{devpath}==”0″

ATTRS{version}==” 2.00″

ATTRS{maxchild}==”8″

ATTRS{quirks}==”0x0″

ATTRS{avoid_reset_quirk}==”0″

ATTRS{authorized}==”1″

ATTRS{manufacturer}==”Linux 3.0.0-14-generic

ehci_hcd”

ATTRS{product}==”EHCI Host Controller”

ATTRS{serial}==”0000:00:1d.7″

ATTRS{authorized_default}==”1″

looking at parent device ‘/devices/pci0000:00/0000:00:1d.7’:

KERNELS==”0000:00:1d.7″

SUBSYSTEMS==”pci”

DRIVERS==”ehci_hcd”

ATTRS{vendor}==”0x8086″

ATTRS{device}==”0x27cc”

ATTRS{subsystem_vendor}==”0x103c”

ATTRS{subsystem_device}==”0x3010″

ATTRS{class}==”0x0c0320″

ATTRS{irq}==”20″

ATTRS{local_cpus}==”ff”

ATTRS{local_cpulist}==”0-7″

ATTRS{dma_mask_bits}==”32″

ATTRS{consistent_dma_mask_bits}==”32″

ATTRS{broken_parity_status}==”0″

ATTRS{msi_bus}==””

ATTRS{companion}==””

looking at

parent device ‘/devices/pci0000:00’:

KERNELS==”pci0000:00″

SUBSYSTEMS==””

DRIVERS==””

我們使用的規(guī)則從有ATTRS(ATTRS=Device

Attributes設(shè)備屬性)的行開始

  不管是ENV,還是ATTRS,我們可以構(gòu)建一個udev設(shè)備管理規(guī)則集。規(guī)則集的名稱可以隨意,根據(jù)原作者的意圖,我們叫做51-android.rules:

  你能這樣建立規(guī)則集文件:

gksu gedit /etc/udev/rules.d/51-android.rules

  之后,請在規(guī)則集文件中加入相關(guān)的規(guī)則,以原作者的規(guī)則來看,注意是一行一個:

SUBSYSTEM==”u”,

ENV{ID_VENDOR_ID}==”04e8″, ENV{ID_MODEL}==”Galaxy”, MODE=”0666″,

SYMLINK+=”GalaxyNexus”

SUBSYSTEM==”u”, ENV{ID_VENDOR_ID}==”04e8″,

ENV{ID_MODEL_ID}==”6860″, MODE=”0666″, SYMLINK+=”GalaxyNexus”

SUBSYSTEM==”u”, ATTR{idVendor}==”04e8″, ATTR{idProduct}==”6860″,

ATTR{product}==”Galaxy” MODE=”0666″, SYMLINK+=”GalaxyNexus”

如上面所加的規(guī)則,這些規(guī)則匹配準(zhǔn)則是SUBSYSTEM,

ENV,ATTR,它只會修改設(shè)備的模式MODE(0666=rw-rw-rw-)與創(chuàng)建鏈接于/dev/GalaxyNexus的GalaxyNexus標(biāo)識。當(dāng)然,更多的指令可以分配給設(shè)備,如插入或移除設(shè)備時的執(zhí)行命令,你能這樣指定指令:

ACTION==”add”, RUN+=””

ACTION==”remove”,

RUN+=””

例如,我們要設(shè)定設(shè)備在插入或彈出時播放一個聲音或MP3文件,可以如下指令設(shè)定:

ACTION==”add”, RUN+=”/usr/local/bin/NexusMount.sh”

ACTION==”remove”, RUN+=”/usr/local/bin/NexusUnmount.sh”

需要注意的是,每個ACTION指令設(shè)定必須在它自己的命令行;目錄必須正確;指令可以是多重設(shè)定

  一旦規(guī)則構(gòu)建完成,我們需要保存/etc/udev/rules.d/51-android.rules規(guī)則文件

  在你執(zhí)行規(guī)則集前,測試一下通常是一個好主意,因為那樣你能很容易地找出編寫規(guī)則集的錯誤:

  你能使用udevadm工具簡單地完成規(guī)則集的測試:

udevadm info -q path -n d=

根據(jù)原作者的設(shè)備端名/dev/bus/u/001/063,測試行為:

udevadm test –action=”SUBSYSTEM==”u”, ENV{ID_VENDOR_ID}==”04e8″,

ENV{ID_MODEL}==”Galaxy” MODE=”0666″, SYMLINK+=”GalaxyNexus”” $(udevadm info -q

path -n /dev/bus/u/001/063)

雖然測試輸出行相當(dāng)長,兩行輸出信息正確地識別規(guī)則集的指令設(shè)定:

udev_rules_apply_to_event: MODE 0666

/etc/udev/rules.d/51-android.rules:1

udev_rules_apply_to_event: LINK

‘GalaxyNexus’ /etc/udev/rules.d/51-android.rules:1

  一旦你確認(rèn)了規(guī)則集正確,請重啟udev設(shè)備管理服務(wù):

sudo service udev restart

  第四步,退出電腦的登錄,然后重新登錄回

  在設(shè)備插入的情況下,執(zhí)行ADB命令,如確認(rèn)設(shè)備連接:

$ adb devices

你會看到設(shè)備識別號信息,根據(jù)原作者的設(shè)備,它是

0146Bdevice

  如果你的設(shè)備已啟動在Fastboot模式,許多設(shè)備不啟動可能也行,你能執(zhí)行Fastboot命令,如標(biāo)準(zhǔn)的Fastboot設(shè)備:

$

fastboot devices

怎樣搭建一個嵌入式開發(fā)平臺(ARM LINUX)?

搭建嵌入式Linux平臺其實就是在宿主機(jī)與目標(biāo)機(jī)之配侍間的連接,宿主機(jī)一般就是PC,目標(biāo)機(jī)就是開發(fā)板。軟件:在宿主機(jī)上需要Linux的發(fā)行版,目標(biāo)機(jī)上需要移植Linux內(nèi)核。交叉編譯實現(xiàn):先在宿主機(jī)上安裝交叉工具鏈(ARM的),網(wǎng)上很多下載,也可以自行訂制。然后用交叉工具鏈編譯程序部署到目標(biāo)機(jī)才可以運行。搭建平臺還遠(yuǎn)不止這些,你還要移植bootloader(推薦U-Boot),移植Linux內(nèi)核之后還圓禪要制作根文件系統(tǒng)(相當(dāng)于計算機(jī)的硬盤),否則系統(tǒng)是無法啟動的。

指導(dǎo)教程有很多,百度文庫里面就有,只要搜索“Linux移植”一般整個搭建過程都會有敘述,但是整個的搭建過程因目標(biāo)板、因內(nèi)橘賣塵核、因交叉工具鏈等等的同而不同,沒有普適的辦法,整個移植的過程也會出現(xiàn)各種問題,耐心搭建吧,呵呵,祝你好運!

搭建嵌入式Linux平臺其實就是在宿主機(jī)與目標(biāo)機(jī)之間的連接,宿主機(jī)一般就是PC,目標(biāo)機(jī)就是開發(fā)板。軟件:在宿主機(jī)上需要Linux的發(fā)行版,目標(biāo)機(jī)上需要移植Linux內(nèi)核。交叉編譯實現(xiàn)團(tuán)指返:先在宿主機(jī)上安裝交叉工具鏈(ARM的),網(wǎng)上很多下載,也可以自行訂制。然后用交叉工具鏈編譯程序部署到目標(biāo)機(jī)才可以運行。搭建平臺還遠(yuǎn)不止這些,你還要移植bootloader(推薦U-Boot),塌饑移植Linux內(nèi)核之后還要制作根文件系統(tǒng)(相當(dāng)于計算機(jī)的硬盤),否則系統(tǒng)是無法啟動的。

指導(dǎo)教程有很多,百度文庫里面就有,只要搜索“Linux移植”一般整個搭建過程都會有敘述,但是整個的搭建過程因目標(biāo)板、因內(nèi)核、因交叉工具鏈等等的同而不同,沒有普適逗穗的辦法,整個移植的過程也會出現(xiàn)各種問題,耐心搭建。

嵌入式Linux的ftp最游激常用來完成開發(fā)板和開發(fā)環(huán)境Linux系統(tǒng)之間的的文段手件傳輸功能神燃襪,避免了頻繁的U盤拷貝的過程。

買一塊 好點的 arm9 開發(fā)板,都會附帶 教學(xué)視頻的,這不是一兩句能說清楚的。

關(guān)于嵌入式linux adb安裝的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

創(chuàng)新互聯(lián)(cdcxhl.com)提供穩(wěn)定的云服務(wù)器,香港云服務(wù)器,BGP云服務(wù)器,雙線云服務(wù)器,高防云服務(wù)器,成都云服務(wù)器,服務(wù)器托管。精選鉅惠,歡迎咨詢:028-86922220。


網(wǎng)站名稱:嵌入式Linux中ADB安裝教程(嵌入式linuxadb安裝)
當(dāng)前鏈接:http://m.5511xx.com/article/copipcs.html