Создание исполняемого файла Hello World для BeagleBoard

Я пытаюсь запустить проект HelloWorld на BeagleBoard. Для этого я использую RVDS для создания библиотеки, а затем CodeSourcery для создания исполняемого файла для BeagleBoard.

Чтобы создать библиотеку через RVDS, я использую следующую командную строку:

armcc --cpu cortex-a8 -c hello_world.c --c99 --apcs=/fpic --no_hide_all -O3 -Otime --vectorize --no_unaligned_access -I"D:\RVDS\hello_world" -I"C:\Program Files\ARM\RVCT\Data\4.1\713\include\windows"

Но эта командная строка создает только объектные файлы, а не библиотеку. Для создания библиотеки я использовал команду armar, но не уверен, что это правильно. Следовательно, мой первый вопрос: как я могу создать библиотеку с помощью командной строки RVDS.

Я также попытался создать библиотеку с использованием среды eclipse RVDS, выбрав новый проект Static Library. После создания библиотеки я использовал CodeSourcery для создания исполняемого файла, используя:

arm-none-linux-gnueabi-gcc -Wall -I. -L. test_hello_world.c -lhello_world -o test_hello_world

Но если я попытаюсь запустить этот исполняемый файл на BeagleBoard, он не сработает. Поэтому я думаю, что что-то не так в том, как я создаю библиотеку.

Пожалуйста, дайте мне знать, если кто-то пробовал использовать комбинацию RVDS и CodeSourcery для создания исполняемого файла для BeagleBoard.

Спасибо за вашу помощь.


person user1116700    schedule 02.01.2012    source источник


Ответы (1)


Если плата beagle работает под управлением Linux, вы можете использовать версию gcc для устройства, чтобы скомпилировать свой hello world. Таким образом, вам не нужно настраивать кросс-компилятор на рабочем столе.

person nathan    schedule 03.01.2012
comment
Спасибо за ваш ответ Натан. BeagleBoard работает под управлением Linux через SD-карту. Я компилирую свой исходный код на Win7, а затем копирую исполняемый файл на SD-карту. а затем запустить это через TeraTerm. Есть ли способ перекрестно скомпилировать мой код на Win7, а затем использовать его на BeagleBoard? Если нет, то могу ли я использовать TeraTerm для компиляции исходного кода на Beagle Board, а затем запускать его на Beagle Board? - person user1116700; 04.01.2012
comment
Если ваш дистрибутив Linux поставляется с установленным GCC (у нас был), то да, вы можете скомпилировать и запустить свой исходный код на Beagle Board без установки набора инструментов ARM GCC в Windows. На самом деле я думаю, что это было бы намного проще. - person nathan; 04.01.2012
comment
Я проверил, и у меня не установлен GCC. Есть ли способ сделать кросс-компиляцию в Windows. Мне это понадобится для моих будущих проектов, где я использую инструкции NEON для оптимизации и, следовательно, использую RVDS для компиляции. - person user1116700; 04.01.2012
comment
Я успешно настроил CodeSourcery для AT91SAM9261, но не для Beagle. Если вы используете Angstrom Linux на своем Beagle, вы сможете установить gcc через opkg install gcc или что-то в этом роде. - person nathan; 04.01.2012