Linux下基于eclipse的arm开发环境的建立
這是我參考了網(wǎng)上的很多資料后,修改并驗(yàn)證的,有一定的參考意義。不一定面面俱到,因?yàn)橛械牡胤秸f(shuō)多了就顯得有點(diǎn)啰嗦,要是還有疑問(wèn)就給我留言我盡力解答。?
1、安裝redhat9,(可以用迅雷下,速度還不錯(cuò)),不一定非得用完全安裝,將開(kāi)發(fā)包都裝上就可以了,vsftp也要裝,這樣大概 需要1.6g左右的空間, 這里設(shè)置主機(jī)ip:192.168.0.3,開(kāi)發(fā)板ip:192.168.0.2
ps:我在ubuntu上就怎么也編譯不出開(kāi)發(fā)板能用的程序,非得用RedHat9才行,很郁悶!
2、在vmware上,把vmware-tools也裝上
3、用網(wǎng)絡(luò)鄰居
?mount -t smbfs -o username=張劍,password="" //swordzjj/nano2410 /root/.gnome-desktop/nano/
4、把Nano2410AV2-SDK10.tgz和arm-linux-toolchains.tgz拷到/tmp上
?tar xvzf Nano2410AV2-SDK10.tgz –C /
?tar xvzf arm-linux-toolchains.tgz -C /
?
5、安裝JRE1.5.0
?./jre-1_5_10-linux-i586-rpm.bin
?
6、安裝eclipse 3.2、cdt、漢化包
?tar zxvf eclipse-SDK-3.2.1-linux-gtk.tar.gz -C /opt
?tar zxvf org.eclipse.cdt-3.1.1-linux.x86.tar.gz -C /opt
?NLpack1-eclipse-SDK-3.2.1-gtk.zip /opt
?
7、安裝firefox-2.0
?tar zxvf firfox-2.0.0.1.tar -C /opt
8、安裝AdobeReader
?rpm -i AdobeReader_chs-7.0.0-2.i386.rpm
9、更新環(huán)境變量
vi /etc/profile,
# Path manipulation
if [ `id -u` = 0 ]; then
?pathmunge /sbin
?pathmunge /usr/sbin
?pathmunge /usr/local/sbin
?pathmunge /usr/local/arm/2.95.3/bin
?pathmunge /usr/java/jre1.5.0_10/bin
fi
vi /etc/exports
在最后加上:/opt/FriendlyARM/Nano2410A_v2/root_nfs *(rw,sync,no_root_squash)
/opt/FriendlyARM/Nano2410A_V2/root_nfs是代表要作為Nano2410A_v2的根文件系統(tǒng)的共享目錄;*代表所有的客戶機(jī)都可以掛接此文件系統(tǒng)目錄;rw代表客戶機(jī)以讀寫(xiě)許可來(lái)掛接它們的根文件系統(tǒng);no_root_squash選項(xiàng)允許客戶機(jī)以主機(jī)上的root身份掛接根文件系統(tǒng)。
打開(kāi)/etc/rc.local文件,在文件后面增加一行“/etc/init.d/nfs start”,以使開(kāi)機(jī)后自動(dòng)
啟動(dòng)NFS服務(wù),你也可以運(yùn)行如下命令啟動(dòng)、停止或重啟NFS服務(wù):
#/etc/init.d/nfs start
#/etc/init.d/nfs stop
#/etc/init.d/nfs restart
注銷(xiāo)后重新登陸就可以了
10、建立快捷方式
Eclipse的快捷方式
把eclipse目錄下的eclipse.xpm先拷到/usr/share/icons
[Desktop Entry]
Encoding=UTF-8
Name=Eclipse 3.2
GenericName[zh_CN]=Eclipse
Comment=Eclipse
Exec=/opt/eclipse/eclipse %u
Icon=eclipse.xpm
Terminal=false
Type=Application
StartupWMClass=Eclipse
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;
Categories=TextEditor;Development;X-Red-Hat-Base;Application;
firefox的快捷方式
把firefox\icons\mozicon128.png先拷到/usr/share/icons/firefox.png
[Desktop Entry]
Encoding=UTF-8
Name=Firefox Web Browser 2
GenericName[zh_CN]=firefox
Comment=Firefox web browser
Exec=/opt/firefox/firefox %u
Icon=firefox.png
Terminal=false
Type=Application
StartupWMClass=Firefox-bin
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;
Categories=Network;X-Red-Hat-Base;Application;?
有X-Red-Hat-Base,快捷方式就在一級(jí)菜單里,沒(méi)有在二級(jí)菜單里
?
11、安裝調(diào)試器
?tar jxvf gdb-6.4-tar-bz2
?cd gdb-6.4
?./configure --target=arm-linux --prefix=/usr/local/arm-gdb -v
?make
?make install
?export PATH=$PATH:/usr/local/arm-gdb/bin
?cd gdbserver
?./configure --target=arm-linux –host=arm-linux
?make CC=/usr/local/arm/2.95.3/bin/arm-linux-gcc
12、eclipse的基本操作
? (1) 新建->standard make c->new c file->編寫(xiě) ->保存?
? (2)項(xiàng)目->屬性->c/c++ make project->"Compiler invocation command"里填寫(xiě)/usr/local/arm/2.95.3/bin/arm-linux-gcc
(3)項(xiàng)目->Creat Make Target->"Target Name":copy-->"Make Target":copy
(4)運(yùn)行->調(diào)試->C/C++ local Application->Debugger->"Debugger":gdbserver Debugger
?->"GDB debugger":/usr/local/arm-gdb/bin/arm-linux-gdb->"Connection"->"Type":Tcp,"Host name or IP address":192.168.0.2 ,"Port number":1000
13、makefile的編寫(xiě)
CC=arm-linux-gcc
all:
?$(CC) -g hello.c -o hello
clean:
?rm -vf hello *~
copy: all
?cp?hello /var/ftp
這里的copy是為了方便通過(guò)ftp下載到開(kāi)發(fā)板
14、如何調(diào)試
??? (1)先建立遠(yuǎn)程調(diào)試環(huán)境
?tar zxvf lib-for-gdbserver.tgz -C /tmp
然后把解壓出來(lái)的libthread_db-1.0.so、libthread_db.so、libthread_db.so.1下載到開(kāi)發(fā)板的/lib里
?下載可以通過(guò)ftp,舉個(gè)例子要把libthread_db-1.0.so下載到開(kāi)發(fā)板,可以這樣做:
?A、在主機(jī)(192.168.0.3)上啟動(dòng)vsftp,然后,cp libthread_db-1.0.so /var/ftp
?B、在開(kāi)發(fā)板(192.168.0.2)上,運(yùn)行wget ftp://192.168.0.3/libthread_db-1.0.so
?(2)編譯時(shí)要加上參數(shù)"-g" : arm-linux-gcc -g hello.c -o hello
?(3)在開(kāi)發(fā)板上運(yùn)行 ./gdbserver 192.168.0.2:1000 hello
?192.168.0.3為宿主機(jī)IP,在目標(biāo)系統(tǒng)的1000端口開(kāi)啟了一個(gè)調(diào)試進(jìn)程,hello為要調(diào)試的程序。
出現(xiàn)提示:
Process /tmp/hello created: pid=80
Listening on port 1000
?(4)在主機(jī)上運(yùn)行arm-linux-gdb hello或者在eclipse上點(diǎn)"調(diào)試"
?......
?(gdb) target remote 192.168.0.2:1000
出現(xiàn)提示:
Remote debugging using 192.168.0.2:1000
[New thread 80]
[Switching to thread 80]
0x40002a90 in ??()
同時(shí)在minicom下提示:
Remote debugging from host 192.168.0.3
(gdb)
連接成功,這時(shí)候就可以輸入各種gdb命令如list、run、next、step、break,continune等進(jìn)行程序調(diào)試了。
?
?ok,可以開(kāi)始寫(xiě)程序了。
?
?
?
?
?
?
??
轉(zhuǎn)載于:https://www.cnblogs.com/swordzj/archive/2006/12/23/2034777.html
總結(jié)
以上是生活随笔為你收集整理的Linux下基于eclipse的arm开发环境的建立的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 配置silverlight 2的开发环境
- 下一篇: 给div层设置投影