Двоичные файлы набора инструментальных средств не могут быть найдены

При попытке создать последнюю версию загрузчика подводной лодки для моей платы mini2440 ARM мне удалось загрузить пакет набора инструментальных средств с codesourcery и извлечь его к следующему пути: /usr/local/arm-2008q3/

Я также экспортировал следующие значения для текущей сессии:

export PATH=$PATH:/usr/local/arm-2008q3/bin
export CROSS_COMPILE=arm-none-linux-gnueabi-

Когда я работаю make Я получаю следующий вывод, и я не могу выяснить почему:

make: arm-none-linux-gnueabi-gcc: Command not found
for dir in tools examples api_examples ; do make -C $dir _depend ; done
make[1]: arm-none-linux-gnueabi-gcc: Command not found
make[1]: Entering directory `/home/deth/uboot/mini2440/tools'
make[1]: Nothing to be done for `_depend'.
make[1]: Leaving directory `/home/deth/uboot/mini2440/tools'
make[1]: arm-none-linux-gnueabi-gcc: Command not found
make[1]: Entering directory `/home/deth/uboot/mini2440/examples'
/bin/sh: 1: arm-none-linux-gnueabi-gcc: not found

Я проверил все дважды, и двоичные файлы действительно находятся в упомянутой папке, но... Объясните, где я неправ.

1
задан 9 July 2014 в 23:14

2 ответа

Ну, почти после трех дней headbanging в стену мне удалось решить это. Чтобы быть честным, я никогда, возможно, не решал его, если иногда не установленный набор инструментальных средств COdesourcery с исполняемым установщиком, который они также предоставляют. После выполнения, которое вручную распакованная версия начала выполнять! Это, конечно, привело к заключению, что были пропавшие без вести библиотек. Я пытался воспроизвести проблему на отдельной виртуальной машине и вуаля, здесь являюсь несколькими словами, которые решили целую проблему:

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

Hope это поможет кому-то, и благодаря всем, кто пытался помочь!

1
ответ дан 9 July 2014 в 23:14

Попытайтесь установить еще несколько переменных. Ниже что-то, что работает на меня с набором инструментальных средств, установленным в моем корневом каталоге (Ваш отличается, просто измените MY_ARM_BASE). Я не делаю большой перекрестной компиляции, таким образом, я поместил необходимые переменные в файл, (я назвал мой "myconfig"), и выполните его с точечной командой для помещения его в мою среду (таким образом, выполнить разрешение даже не необходимо).

.  myconfig

Теперь make-файл, который я использовал, НЕ был от поставщика набора инструментальных средств, таким образом, я действительно вошел в каталог bin набора инструментальных средств и добавил ссылки к исполняемым файлам с краткими названиями, например:

ln -s arm-none-linux-gnueabi-g++ g++

я тогда добавил определение CXX переменным набора инструментальных средств для разрешения выполненному make-файлу.

===, Помещенный в файл, для удобства ===

MY_ARM_BASE=${HOME}/dev/toolchain/arm-2008q3
C_INCLUDE_PATH=${MY_ARM_BASE}/lib/gcc/arm-none-linux-gnueabi/4.3.2/include:${MY_ARM_BASE}/lib/gcc/arm-none-linux-gnueabi/4.3.2/include-fixed
LIBRARY_PATH=${MY_ARM_BASE}/arm-none-linux-gnueabi/libc/lib:${MY_ARM_BASE}/arm-none-linux-gnueabi/libc/usr/lib
CPLUS_INCLUDE_PATH=${MY_ARM_BASE}/arm-none-linux-gnueabi/include/c++/4.3.2
#OBJC_INCLUDE_PATH
COMPILER_PATH=${MY_ARM_BASE}/bin
#LD_RUN_PATH
#GPROF_PATH
#######
CC=${COMPILER_PATH}/gcc
CXX=${COMPILER_PATH}/g++
RANLIB=${COMPILER_PATH}/ranlib
STRIP=${COMPILER_PATH}/strip
export C_INCLUDE_PATH LIBRARY_PATH CPLUS_INCLUDE_PATH COMPILER_PATH
export CC CXX RANLIB STRIP
0
ответ дан 9 July 2014 в 23:14

Другие вопросы по тегам:

Похожие вопросы: