2016-10-25 1 views
0

Мне было интересно, можете ли вы помочь мне с некоторыми вопросами и вопросами, которые у меня есть для разработки для i.MX6 SoloX в bare-metal. Я смотрел на эту ссылку https://community.nxp.com/docs/DOC-106253 и загрузил там файлы, чтобы использовать их в качестве примера того, как разработать код с открытым кодом c для i.MX6.Как создать код i.mx6sx с открытым текстом, используя eclipse?

Затем я настраиваю свою среду затмения в соответствии с этим уроком https://community.nxp.com/docs/DOC-103736, но просто toolchain, потому что меня не интересует эксперт по процессору.

Поскольку я работаю на Linux я не установил код Sourcery вещь, а я работаю с GCC-Арм-непереключаемых EABI который я установил с помощью:

$ sudo apt-get install gcc-arm-none-eabi 

И поэтому я пришлось изменить CS-гт и CS- сделать для п.м. и сделать соответственно.

И я был в состоянии создать затмение проекта с загруженного кода и настроить проект, чтобы сделать его работу, тем не менее, у меня была первая ошибка:

main.c:8:19: fatal error: stdio.h: No such file or directory 
#include <stdio.h> 
      ^
compilation terminated. 
make: *** [cortex_A9/main.o] Error 1 
cortex_A9/subdir.mk:24: recipe for target 'cortex_A9/main.o' failed 

И я был в состоянии решить, что добавление "/ usr/include" в каталогах include на проект> свойства. Но я не уверен, что это правильный способ решить эту ошибку.

После исправления этой ошибки я получил новый:

syscalls.c:168:1: error: unknown type name 'caddr_t' 
caddr_t _sbrk(int incr) 

И для решения, что я должен был включать в себя в явном виде файла «/usr/include/x86_64-linux-gnu/sys/types.h «, а также я не знаю, правильно ли это решить его.

Теперь устранив эти две ошибки, которые я имею следующий:

Building target: imx6-A9.elf 
Invoking: Cross ARM C Linker 
arm-none-eabi-gcc -mcpu=cortex-a9 -march=armv7-a -marm -mlittle-endian -mfloat-abi=softfp -mfpu=neon -mno-unaligned-access -fno-zero-initialized-in-bss -O0 -g -T "/home/mmalagon/iMX6/MX6SX_hello_MFG/cortex_A9/mx6slx.ld" -nostartfiles -Wl,-Map,"imx6-A9.map" -o "imx6-A9.elf" ./cortex_A9/main.o ./cortex_A9/syscalls.o ./cortex_A9/uart.o 
/usr/lib/gcc/arm-none-eabi/4.9.3/../../../arm-none-eabi/bin/ld: cannot find -lg 
makefile:42: recipe for target 'imx6-A9.elf' failed 
/usr/lib/gcc/arm-none-eabi/4.9.3/../../../arm-none-eabi/bin/ld: cannot find -lc 
collect2: error: ld returned 1 exit status 
make: *** [imx6-A9.elf] Error 1 

Что я не был в состоянии решить.

Я не знаю, является ли эта ошибка следствием того, как я решил две предыдущие ошибки.

Кто-нибудь знает, как правильно настроить затмение для разработки i-го процессора i.MX6?

Большое спасибо за помощь!

ответ

0

Если вы хотите, чтобы разработать код голого металла для i.MX6SoloX без использования CodeSourcery, то вам необходимо выполнить следующее:

sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi -y 

А затем выбрать «Пользовательская (рука-ни-EABI-НКА) " at Проект> Настройки> C/C++ Build на вкладке« Toolchains ».

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