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ç®å½ä¸
温馨提示:答案为网友推荐,仅供参考