Как создать образ ОС, включая 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
,