Я пытаюсь пересечь скомпилировать простой helloworld.c работать на ARM (Cortex-A5)Cross Compile helloworld.c для ARM (Cortex-A5)
Я получаю следующую ошибку
gcc: error trying to exec 'cc1' execvp: No such file or directory
HW/SW: SAMA5D31 процессор, Android Linux
Хост: Ubuntu 12,04
Makefile
CC=/home/userid/android4sam_v4.0/cross_compile_mentor/arm-2013.05/bin/arm-none-linux-gnueabi-gcc
CFLAG=I.
helloworld:helloworld.o
$(CC)-o helloworld helloworld.o -I.
Я скомпилировал программу на главной машине и отлично работает. Затем я экспортировал перекрестный путь компилятора и попытался скомпилировать
перекрестного путь компилятора
/home/userid/android4sam_v4.0/cross_compiler_mentor/arm-2013.05/arm-none-linux-gnueabi/bin
прочитать также несколько поста, указывающий на GCC_EXEC_PREFIX (окр). Когда я повторяю $ GCC_EXEC_PREFIX, я ничего не получаю. Если это причина, кто-то может предложить, как решить проблему.
Также я ознакомился с определением -mcpu = cortex-A5. Это необходимо?
Также я сделал найти cc1 найдены следующие
/usr/lib/gcc/arm-linux-gnueabi/4.4.7/cc1
/usr/lib/gcc/arm-linux-gnueabi/4.6/cc1
Я также посмотрел на Environment Variables Affecting GCC
Я также читал что-то о «xgcc -B» Я не уверен, если это имеет отношение к решению проблемы.
Выход из Gcc -print-разыскных- директорий
install: /usr/lib/gcc/x86_64-linux-gnu/4.6/
programs: =/usr/lib/gcc/x86_64-linux-gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux- gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/bin/x86_64-linux-gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/bin/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/bin/
libraries: =/usr/lib/gcc/x86_64-linux-gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/lib/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/4.6/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../lib/:/lib/x86_64-linux-gnu/4.6/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/4.6/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../x86_64-linux-gnu/lib/:/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../:/lib/:/usr/lib/
также следующие команды скомпилирован без каких-либо проблем
arm-linux-gnueabi-gcc -o serial -static serial.c
Обновление 12/1/2013 Следующая проблема был разрешен путем изменения переменной CC, как предлагает Крис Стреттон
gcc: error trying to exec 'cc1' execvp: No such file or directory
Как правило, вы не ссылаетесь на кросс-компилятор как 'gcc', а на' arm-linux-gnueabi-gcc', однако, если это привязка для Android, могут применяться другие соображения. –
@Chris Я экспортировал путь «кросс-компилятор». Я попытался назначить полный путь к CC, но все равно получил ту же ошибку. Я также попробовал компиляцию в командной строке, давая полный путь, по-прежнему получаю ту же ошибку. –
@ChrisStratton: Спасибо за подсказку, начальные проблемы были решены. –