不能,雖然兩者都是基于同一內核開發的產品,但是兩者經過了后期開發,兩者為了達到一些應用都做了優化、改動,所以在linux 上能做的事情,在安卓那里就不能做,不是說一定不能,這個是可以通過一些小的應用來實現一些的(個人見解)
成都創新互聯是一家專業提供寧洱企業網站建設,專注與成都網站制作、成都網站建設、H5響應式網站、小程序制作等業務。10年已為寧洱眾多企業、政府機構等服務。創新互聯專業網絡公司優惠進行中。
使用eclipse進行嵌入式Linux的開發環境配置:
1、安裝jdk
jdk(java development kit)即java開發包,其中包含了運行eclipse所需要的jre. ubuntu缺省安裝的gnu版本的jre運行效率不高,所以需要安裝sun公司的jre. 首先從sun的網站上下載安裝包jdk-6u7-linux-i586.bin,然后如下進行安裝:
# mkdir -p /opt/java
# ./jdk-6u7-linux-i586.bin // 執行自解壓文件,生成目錄
# mv jdk1.6.0_07 /opt/java // 把目錄移到/opt/java下
# cd /opt/java
# ln -s jdk1.6.0_07 jdk
# mv /etc/alternatives/java /etc/alternatives/java.gnu
# ln -s /opt/java/jdk/bin/java /etc/alternatives/java
# export JAVA_HOME=/opt/java/jdk // 設置環境變量
2、安裝eclipse和cdt
從eclipse網站上下載安裝包eclipse-SDK-3.4-linux-gtk.tar.gz 和cdt-master-5.0.0.zip
# cd /opt
# tar zxvf eclipse-SDK-3.4-linux-gtk.tar.gz // 解壓生成eclipse目錄
# export PATH=/opt/eclipse:$PATH
# mkdir -p /opt/cdt
# cd /opt/cdt
# unzip cdt-master-5.0.0.zip
# cp -r plugins/* /opt/eclipse/plugins/
# cp -r features/* /opt/eclipse/features/
二、創建c/c++工程
假設已經在linux上安裝好了arm交叉工具鏈,下面介紹如何創建、交叉編譯和調試c/c++工程,進入eclipse安裝路徑后,運行eclipse。
創建c 工程
使用缺省的Linux GCC工具鏈
進入c/c++ 界面
添加源代碼文件1
添加源代碼文件2
編輯代碼
設置工程屬性,指定交叉工具鏈1
設置工程屬性,指定交叉工具鏈2
設置工程屬性,指定交叉工具鏈3
編譯工程
已生成arm平臺可執行代碼
配置調試選項
設置Debugger和 GDB debugger選項
設置連接類型為TCP,目標板的ip地址和調試端口號。端口號任意指定,通常大于1024(避免和系統所用端口號沖突)
在開發板上運行程序,格式如上圖所示:gdbserver是交叉調試輔助程序;192.168.0.150是主機的ip地址;1234是調試端口號,和eclipse調試選項里設定的端口號要一致
點擊Debug,進入調試界面
執行到斷點
eclipse的調試界面和操作和在windows下開發類似。
所需開發工具及環境
虛擬機Linux:Fedora 9
交叉編譯工具:arm-linux-gcc-3.4.1.tar.bz2
集成開發工具:Eclipse(Linux安裝包中自帶的,安裝Linux時選中安裝)
安裝ARM交叉編譯器
1. 安裝。其實很簡單,就是將下載的arm-linux-gcc-3.4.1.tar.bz2解壓到Linux根目錄即可(因為解壓后已經包含了/usr/local目錄,所以要解壓到根目錄),如下命令:
tar -jxvf arm-linux-gcc-3.4.1.tar.bz2 -C /
解壓后的目錄/usr/local/arm/3.4.1/
2. 設置環境變量。就是把交叉編譯器的路徑設置到系統環境變量里面去。
echo $PATH
查看現有的環境變量
如果只想臨時添加交叉編譯器的環境變量(注:臨時添加的系統重啟或注銷后又沒有了),只需在命令行輸入如下命令:
export PATH=$PATH:/usr/local/arm/3.4.1/bin
如果想這個環境變量永久的添加到系統的環境變量中,則你只需把這個命令添加到/root/.bashrc文件的最后一行即可(這個文件是隱藏文件,你要在文件瀏覽器中單擊查看菜單,勾選顯示隱藏文件才能看到)
3. 測試建立的交叉編譯環境。新建一個c程序,文件名:test.c, 如下:
#include stdio.h
int main(void)
{
printf("Hellow world!\n");
return 0;
}
進行交叉編譯,如下:
arm-linux-gcc -o test test.c
將交叉編譯好的目標文件test下載到ARM開發板中并運行,如下:
./test
輸出結果為:
Hellow world!
用集成開發工具Eclipse來開發嵌入式應用程序
雙擊Eclipse圖標啟動Eclipse
設置Eclipse的工作空間,就是選個目錄,單擊OK
啟動后的主界面
開始新建一個應用程序工程
選擇新建一個C工程,單擊Next
給工程取個名字,這里我就叫test_app;然后選擇工程類型,我選擇了個Hellow world C工程模版,單擊Next
填寫作者、版權等信息,單擊Next
沒什么選的,點擊Finish
單擊Yes
新建好的項目工程
展開左邊的源代碼目錄,雙擊打開主函數。這里只是輸出一句"Hello World!!!",你可以做一些其他復雜的應用
單擊Project菜單,去掉Build Automatically的勾選,因為勾選的話,每次修改一個地方工程都會自動進行編譯
打開工程的屬性對話框進行編譯選項的設置
我們的應用程序最終要到嵌入式arm上運行,這里就要把gcc改成arm-linux-gcc編譯器,當然前提是你要在你的開發主機上先安裝arm-linux-gcc
C連接器也要改成arm-linux-gcc
這里的Libraries是設置你的應用程序中用到的庫文件,比如應用程序中用到了線程類,則這里在上面添加pthread這個庫,下面就添加這個庫的路徑。如果應用程序沒用到任何庫文件就不用管了
選中左側的工程名,右鍵,在彈出的菜單中選擇Build Project編譯工程
編譯好后的工程,目標文件在Debug目錄下
27種用法格式 :
用法說明 :
1、 pm list packages : prints all packages, optionally only those whose package name contains the text in FILTER. Options:
例子:列出系統中所有packages
2、 pm list permission-groups : prints all known permission groups.
例子:
3、 pm list permissions : prints all known permissions, optionally only those in GROUP. Options:
例子:列出系統所有許可
4、 pm list instrumentation : use to list all test packages; optionally supply to list the test packages for a particular application. Options:
-f: list the .apk file for the test package.
5、 pm list features : prints all features of the system.
例子:列出所有手機特性
6、 pm list users : prints all users on the system.
例子:
7、 pm path : print the path to the .apk of the given PACKAGE.
例子:按包名查找apk文件所在路徑
8、 pm dump : print system state associated with the given PACKAGE.
9、 pm install : installs a package to the system. Options:
例子:
10、 pm uninstall : removes a package from the system. Options:
-k: keep the data and cache directories around after package removal. 保留數據
例子:
11、 pm clear : deletes all data associated with a package..
例子:只刪除數據
12、 pm enable, disable, disable-user, disable-until-used : these commands change the enabled state of a given package or component (written as "package/class").
13、 pm grant, revoke : these commands either grant or revoke permissions to applications. Only optional permissions the application has declared can be granted or revoked.
14、 pm get-install-location : returns the current install location.
15、 pm set-install-location : changes the default install location.
NOTE: this is only intended for debugging; using this can cause applications to break and other undersireable behavior.
16、 pm trim-caches : trim cache files to reach the given free space.
17、 pm create-user : create a new user with the given USER_NAME, printing the new user identifier of the user. 創建新用戶
18、 pm remove-user : remove the user with the given USER_IDENTIFIER, deleting all data associated with that user 。 按用戶ID刪除用戶
dd :用指定大小的塊拷貝一個文件,并在拷貝的同時進行指定的轉換。
注意:指定數字的地方若以下列字符結尾,則乘以相應的數字: b=512 ; c=1 ; k=1024 ; w=2
參數注釋:
4、備份與恢復MBR
·備份文件開始的512個字節大小的MBR信息到指定文件:
#dd if=/system/xbin/busybox of=/data/local/tmp/bb count=1 bs=512
· count=1 指僅拷貝一個塊; bs=512 指塊大小為512個字節
·恢復:
#dd if=/data/local/tmp/bb of=/data/local/tmp/bbb
·將備份的MBR信息寫到磁盤開始部分
/dev/null ,外號叫無底洞,你可以向它輸出任何數據,它通吃,并且不會撐著!
/dev/zero ,是一個輸入設備,你可你用它來初始化文件。該設備無窮盡地提供 0 ,可以使用任何你需要的數目——設備提供的要多的多。他可以用于向設備或文件寫入字符串 0 。
/dev/null ——它是空設備,也稱為位桶( bit bucket )。任何寫入它的輸出都會被拋棄。如果不想讓消息以標準輸出顯示或寫入文件,那么可以將消息重定向到位桶。
文章題目:安卓與linux命令 linux 與安卓
網站路徑:http://vcdvsql.cn/article14/ddsipde.html
成都網站建設公司_創新互聯,為您提供服務器托管、企業建站、軟件開發、動態網站、品牌網站建設、微信公眾號
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯