2013-04-01 47 views
0

我正在嘗試在樹莓派上安裝彙編代碼的工具鏈。我用下面的步驟安裝包文件:arm-none-eabi命令將無法正確安裝

$ wget http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/downloads/arm-none-eabi.tar.bz2 
--2012-08-16 18:26:29-- http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/downloads/arm-none-eabi.tar.bz2 
Resolving www.cl.cam.ac.uk (www.cl.cam.ac.uk)... 128.232.0.20, 2001:630:212:267::80:14 
Connecting to www.cl.cam.ac.uk (www.cl.cam.ac.uk)|128.232.0.20|:80... connected. 
HTTP request sent, awaiting response... 200 OK 
Length:8070 (31M) [application/x-bzip2] 
Saving to: `arm-none-eabi.tar.bz2' 

100%[======================================>] 32,108,070 668K/s in 67s 

2012-08-16 18:27:39 (467 KB/s) - `arm-none-eabi.tar.bz2' saved [32108070/32108070] 

$ tar xjvf arm-none-eabi.tar.bz2 
arm-2008q3/arm-none-eabi/ 
arm-2008q3/arm-none-eabi/lib/ 
arm-2008q3/arm-none-eabi/lib/libsupc++.a 
arm-2008q3/arm-none-eabi/lib/libcs3arm.a 
... 
arm-2008q3/share/doc/arm-arm-none-eabi/info/gprof.info 
arm-2008q3/share/doc/arm-arm-none-eabi/info/cppinternals.info 
arm-2008q3/share/doc/arm-arm-none-eabi/LICENSE.txt 

$ export PATH=$PATH:$HOME/arm-2008q3/bin 

這似乎工作,包文件是在正確的位置。

~/arm-2008q3/bin $ ls 
arm-none-eabi-addr2line arm-none-eabi-gcc-4.3.2 arm-none-eabi-objdump 
arm-none-eabi-ar   arm-none-eabi-gcov  arm-none-eabi-ranlib 
arm-none-eabi-as   arm-none-eabi-gdb  arm-none-eabi-readelf 
arm-none-eabi-c++  arm-none-eabi-gdbtui  arm-none-eabi-run 
arm-none-eabi-c++filt arm-none-eabi-gprof  arm-none-eabi-size 
arm-none-eabi-cpp  arm-none-eabi-ld   arm-none-eabi-sprite 
arm-none-eabi-g++  arm-none-eabi-nm   arm-none-eabi-strings 
arm-none-eabi-gcc  arm-none-eabi-objcopy arm-none-eabi-strip 

但是,當我去做,我會得到以下結果。

arm-none-eabi-as -I source/ source/main.s -o build/main.o 
make: arm-none-eabi-as: Command not found 
make: *** [build/main.o] Error 127 

在此先感謝您的幫助。

+0

你能給echo $ PATH – ThePosey

+0

'/ usr/local/sbin:/ usr/local/bin:/ usr/sbin:/ usr/bin:/ sbin:/ bin:/ usr/games:/ home/uuqv/.rvm/bin:/ home/uuqv/arm-2008q3/bin' 另外, 'uuqv @Theta〜$其中arm-none-eabi-爲 /home/uuqv/arm-2008q3/bin/arm-none-eabi-as' – UuqV

+0

我試圖在pi上創建它,並且我得到了一個新的錯誤信息: 'make arm-none-eabi-as -I source/source/main.s -o build/main.o /home/pi/arm-2008q3/bin/arm-none-eabi-as:1:/ home/pi/arm-2008q3/bin/arm-none-eabi-as:語法錯誤:「意外 使:*** [build/main.o]錯誤2' – UuqV

回答

2

export PATH = $ PATH:$ HOME/arm-2008q3/bin只在其執行的shell(以及該shell生成的所有shell)中有效。所以你要麼使用該shell而不是打開一個新的執行make或編輯你的〜/ .bashrc(見Unix: Getting Export PATH to "Stick"

+0

謝謝。這解決了我的問題:) –

2

我遇到了同樣的問題,在我的情況下,問題是我運行的是64位操作系統和要使用的軟件包是32位的。解決的辦法是安裝允許在64位系統上運行32位應用程序的i32-libs軟件包。

# apt-get install ia32-libs 
+0

我在這種情況下,但ia32-libs不再可用!我現在應該怎麼做? – Noah

0

您必須將編譯器指向arm-none-eabi-as所在的正確路徑。你可以這樣做

export PATH=$PATH:/file_path_goes_here/

當你編譯時,你應該沒有問題,因爲編譯器現在知道在哪裏看。