2013-04-01 4 views
0

Я пытаюсь установить инструментальную цепочку для кода сборки на малине pi. Я использовал следующую процедуру для установки файлов пакета:команды 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

Вы можете дать результат эха $ 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 ~ $, который не имеет никакого значения, как /home/uuqv/arm-2008q3/bin/arm-none-eabi-as' – UuqV

+0

Я попытался сделать это на самом pi, и у меня появилось новое сообщение об ошибке: 'make arm-none-eabi-as -I источник/источник/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: Синтаксическая ошибка: "(" неожиданный make: *** [сборка/main.o] Ошибка 2' – UuqV

ответ

2

export PATH = $ PATH: $ HOME/arm-2008q3/bin действует только в оболочке, в которой он выполнен (и любые оболочки, порожденные из этой оболочки). Таким образом, вы используете эту оболочку вместо того, чтобы открывать новую, чтобы выполнить make или отредактировать свой файл ~/.bashrc (см. Unix: Getting Export PATH to "Stick")

+0

Спасибо. Это решило мою проблему :) –

2

Я столкнулся с той же проблемой, и в моем случае проблема заключалась в том, что я запускал 64-разрядную операционная система и пакет, который будет использоваться, являются 32-разрядными. Исправление заключалось в установке пакета i32-libs, который позволяет запускать 32-разрядные приложения в 64-разрядной системе.

# apt-get install ia32-libs 
+0

Я в этой же ситуации, но ia32-libs больше не доступен! Что мне теперь делать? – Noah

0

Вы должны направить свой компилятор на правильный путь, где arm-none-eabi-as находится. Вы можете сделать это

export PATH=$PATH:/file_path_goes_here/

При компиляции, вы не должны иметь никаких проблем, так как компилятор теперь знает, где искать.

 Смежные вопросы

  • Нет связанных вопросов^_^