Программирование Beaglebone C/C++ в Windows 7
У меня есть Beaglebone (Rev: A6), и я хочу разработать программу C/C++ в Windows 7 с использованием Eclipse, а затем перенести исполняемый файл на плату. Но у меня проблемы с настройкой компилятора / отладчика / набора инструментов, необходимых для Beaglebone. Поиск в Интернете дает мне только информацию о том, как настроить среду в Linux, например, установить arm-linux-gnueabi, настроить пути к include ам и т. Д. Мне нужна пошаговая инструкция для настройки среды в Eclipse на компьютере с Windows., Кто-нибудь может помочь?
Я попробовал эти шаги: 1. У меня установлен GNUARM на Windows. 2. В Eclipse IDE я открываю проект C++ с помощью Corss GCC. 3. Из проекта -> свойства -> сборка C/C++ -> настройки я добавляю 'arm-elf-' к каждой команде кросс-компилятора. 4. Из установочного каталога GNUARM я добавляю несколько путей к ".../include/" в "C++ General -> paths and symbos".
мой 'build all' показывает что-то как показано ниже:
10:32:20 **** Build of configuration Debug for project h ****
make all
Building file: ../src/hello.cpp
Invoking: Cross G++ Compiler
arm-elf-g++ -I"C:\GNUARM\include\c++\4.1.1" -I"C:\GNUARM\include\c++\4.1.1\arm-elf" - I"C:\GNUARM\include\c++\4.1.1\backward" -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP - MF"src/hello.d" -MT"src/hello.d" -o "src/hello.o" "../src/hello.cpp"
Finished building: ../src/hello.cpp
Building target: h
Invoking: Cross G++ Linker
arm-elf-g++ -L"C:\GNUARM\lib\gcc\arm-elf\4.1.1\include" -o "h" ./src/hello.o
Finished building target: h
10:32:23 Build Finished (took 2s.967ms)
Это простая программа печати "Hello world". Из проводника проекта 'Debug->src->hello.o -[arm/le]' я копирую его и при запуске на beaglebone с
chmod ugo+x hello.o
./hello.o
-sh: ./hello.o: cannot execute binary file
вышеупомянутый массаж напечатан. Я не знаю, что я сделал не так. Возможно, среда ARM в Eclipse настроена неправильно.
2 ответа
Я получил свой ответ здесь http://www.acmesystems.it/foxg20_eclipse_windows_c. CodeSourcery был тем набором инструментов, который я искал, и это также объясняет, как настроить среду компиляции corss.
Не hello.o
предварительно связанный объектный файл (только скомпилированный контент hello.cpp)? Он не содержит кода запуска или каких-либо библиотечных функций. Линкер добавляет их для получения окончательного результата.
Разве вы не хотите запускать выходной файл компоновщика h
(который уже должен быть исполняемым)?