Как создать образ ОС, включая gcc g++, цепочку инструментов для платформы ARM?

Я пытаюсь создать образ ОС для TI OMAP4 Pandaboard. Загруженный BSP может быть собран, но очень ограничен без компилятора gcc g++. Я думаю, что очень трудно добавить цепочку инструментов в QNX Momentics IDE, потому что нужно добавить так много файлов. Могу ли я вручную изменить файл сборки для этого? Если возможно, приведите пример. Заранее спасибо.

2 ответа

Нет, на вашей платформе TI OMAP4 невозможно запустить g++ (если вы не скомпилировали g++ из исходников для платформы ARM, используя существующий набор инструментов QNX, работающий на платформе X86).

Почему невозможно: QNX выпускает свои инструменты сборки только для хостов на базе X86. Поддерживаемые в настоящее время ОС хоста включают в себя несколько вариантов Windows, Linux и QNX, но предварительное условие заключается в том, что оборудование хоста основано на X86.

Скорее всего, вы на самом деле не хотите создавать свою библиотеку на целевом оборудовании; не должно иметь значения, где вы на самом деле делаете сборку (за исключением очень особых случаев, когда вы строите некоторый исходный код на основе пользовательского ввода и т. д.)

Что вам нужно сделать, так это собрать свою библиотеку на хосте разработки, используя набор инструментов ARM (QCC, если вы хотите использовать инструменты высокого уровня; ntoarmv7-g++, если вы хотите использовать знакомый интерфейс g++). Если у вас есть бинарный файл, вы можете включить его в файл.ifs. Вам просто нужно включить строку в файл.build, как в следующем примере:

/ Путь / на /targetfs/yourbinary=/ путь / на / buildmachine / yourbinary

Если ваша среда сборки настроена так, что mkifs находит ваш бинарный файл, вы можете пропустить часть "path/on/buildmachine".

Если у вас все в порядке с бинарным файлом на вашей цели в / proc / boot, то вы также можете опустить "/path/on/targetfs/ part".

Для простоты разработки, как правило, более удобно хранить двоичный файл на SD-карте с файловой системой FAT. Затем вы можете просто скопировать бинарный файл на SD без необходимости перестраивать файл.ifs.

Наконец, как только вы приобретете опыт, вы захотите экспортировать часть файловой системы вашего хост-компьютера через CIFS или NFS и смонтировать ее непосредственно из вашей цели. Это избавит вас от необходимости копировать файлы (и, возможно, перезагружать цель) в каждом цикле сборки. Но это далеко от вашего первоначального вопроса.

Я думаю, что вы пытаетесь заставить компилятор QNX C/C++ работать на вашей целевой плате. Правильный?

Если это так, то вместо установки Runtime Kit вы устанавливаете платформу разработки программного обеспечения QNX, и вам все будет хорошо.

Вы также можете использовать System Builder для настройки своей ОС QNX, но это будет сложнее, чем просто использование QNX SDP.

Еще одно замечание: QNX использует qcc для С и QCC для C++ вместо gcc, Они оба используют gcc под капотом, но для компиляции на QNX используйте qcc вместо gcc,

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