2016-11-16 10 views
1

Я пытаюсь создать приложение Qt, которое будет запущено встроенным в Raspberry Pi 3. Я следовал этому guide для кросс-компиляции и смог запустить пример qopenglwidget на Пи правильно. Теперь моя проблема заключается в том, что я хотел бы основываться на моем Macbook Pro в Qt Creator, но я понятия не имею, как теперь развертываться на устройстве. Все руководства, которые я видел в Интернете, не объяснили, что происходит на самом деле, и я понятия не имею, как построить кросс-компилятор на моем Mac. Может ли кто-нибудь указать мне в правильном направлении, как это сделать?Qt Cross Compiling на Mac для EGLFS на Raspberry Pi

ответ

0

Итак, вы уже собрали пример своего мака, который работает на вашем малиновом пи?

Это означает, что у вас уже есть кросс-компилятор. . Руководство пользователя, которое вы указали, получило предварительную конструкционную цепочку от https://github.com/raspberrypi/tools

Но я думаю, что это только для ubuntu. При сборке Qt вы должны указать в набор инструментов конфигурирования линии:

-device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- \ 

Это путь к кросс-компилятор компиляции Qt с. Это работало для вас или вы изменили эту строку?

Если вы хотите построить кросс-компилятор самостоятельно, вы можете следить за this guide, хотя я не смог скомпилировать Qt с этим компилятором.

Если вы собрали Qt и примеры работы на вашем Pi, вы можете добавить новый набор в Qt Creator на вашем Mac:

  1. Открыть Qt-Creator -> Настройки:
  2. В разделе Устройства добавьте новое универсальное устройство Linux и следуйте за помощником
  3. Добавьте новый комплект, выберите также и универсальное устройство Linux и укажите только что добавленное устройство, ваш компилятор, который вы использовали для создания Qt, отладчика, если вы создали его с собой компилятор и Qt-версия, которую вы скомпилировали.
  4. Вы должны быть в состоянии построить свой проект с помощью этого комплекта, и он будет развернут на устройство

Сообщите нам, если вы были успешными.