Как сделать кросс-компиляцию стандартного ядра и сервисной инфраструктуры alljoyn?

У меня есть одна камера Wi-Fi с процессором armv5, и я хочу сделать кросс-компиляцию и объединить стандартное ядро, сервисную среду и сделать приложение-производитель уведомлений.

Но я застрял во время кросс-компиляции alljoyn. Я компилирую alljoyn с помощью кросс-компилятора кодов рук с gcc версия 4.3.3

Первоначально я использовал ту же команду, которая использовалась для компиляции стандартного ядра и сервисной инфраструктуры. Только что добавлен CROSS_COMPILE а также ЦПУ флаг для руки и кросс-компилятор. Здесь используется команда, процесс компиляции завершается с ошибкой, связанной с -станд = C ++ 11

команда:

scons BINDINGS = cpp WS = выкл. BT = выкл. ICE = выкл. OS = linux CPU = arm CROSS_COMPILE = «/ home / CodeSourcery / Sourcery_G ++ _ Lite / bin / arm-none-linux-gnueabi-» SERVICES = «about, уведомления, ControlPanel, конфигурация, адаптационный, sample_apps»

ошибка:

….

печать для копирования заголовочных файлов в каталог ‘build’

….

/ * При компиляции первого cc файла * /

cc1plus: ошибка: нераспознанный параметр командной строки «-std = c ++ 11»

Scons: ***
[build / linux / arm / debug / obj / services / config / cpp / samples / ConfigClientSample / ConfigClientMain.o] Ошибка 1

После этой неудачи я нашел следующую ссылку,
https://wiki.allseenalliance.org/develop/building_and_running

Это говорит о том, что мы можем скомпилировать alljoyn для openwrt при кросс-компиляции. Итак, я подготовил и выполнил следующую команду:

scons BINDINGS = cpp WS = выкл BT = выкл ICE = выкл OS = openwrt CPU = openwrt TARGET_PATH = / home / CodeSourcery / Sourcery_G ++ _ Lite / bin / TARGET_CC = arm-none-linux-gnueabi-gcc TARGET_CFLAGS = «- std = c ++ 0x «TARGET_CPPFLAGS =» — std = c ++ 0x «TARGET_CXX = arm-none-linux-gnueabi-g ++ TARGET_LINK = arm-none-linux-gnueabi-gcc TARGET_LINKFLAGS =» «TARGET_AR = «_RIBT = TARGET_AR = STAGING_DIR = / usr / lib / x86_64-linux-gnu SERVICES = «о, уведомление, панель управления, конфигурация, подключение, sample_apps»

Но получить ошибку до начала компиляции,

scons: чтение файлов SConscript …

Проверка поддержки компилятором c ++ флага -std = c ++ 11 … нет

Проверка поддержки компилятором c ++ флага -std = c ++ 0x … нет

*** Компилятор слишком старый для сборки AllJoyn. Aborting.

Так вот мои вопросы,

1. Можно ли сделать кросс-компиляцию стандартного клиента и сервисов alljoyn без использования openwrt?

2. Влияет ли кросс-компиляция с использованием openwrt на какую-либо функциональность alljoyn?

3. Что я должен сделать, чтобы преодолеть ошибку c ++ 11 / c ++ 0x, если я найду новую версию gcc для кросс-компиляции моего кода.

Пожалуйста, дайте мне знать, если кто-то имеет кросс-скомпилированное стандартное ядро ​​и сервисную среду alljoyn для какой-либо платформы, пожалуйста, предоставьте мне шаги / команду для этого.

Заранее спасибо.
Pratik

0

Решение

Эти шаги для кросс-компиляции AllJoyn работали на меня.
http://itisprakash.blogspot.com/2016/05/cross-compile-alljoyn-for-raspberrypi.html

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector