Я использую qt -where-src-5.15.0.tar.xz и gcc-linaro-7.4.1-2019.02-x86_64_arm- linux-gnueabihf в Ubuntu 18 для кросс-компиляции Qt и особенно QtWebEngine.

Я использую следующую конфигурацию:

../qt-everywhere-src-5.15.0/configure \
  -opengl es2 -device linux-rasp-pi4-v3d-g++ \
  -device-option CROSS_COMPILE=~/raspi/tools/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- \
  -sysroot ~/raspi/sysroot \
  -prefix /usr/local/qt5pi \
  -opensource -confirm-license -no-gbm \
  -skip qtscript -skip qtandroidextras -skip qtcanvas3d \
  -skip qtgamepad -skip qtmacextras -skip qtpurchasing \
  -skip qtwinextras -skip qtx11extras \
  -nomake tests -nomake examples -make libs \
  -pkg-config -no-use-gold-linker -v

Если я включаю "-skip qtwebengine" в команду configure, вся компиляция работает хорошо, но когда я включаю qtwebengine, конфигурация завершается ошибкой со следующим предупреждением:

WARNING: Could not find all necessary libraries for qpa-xcb support in QtWebEngine.
WARNING: QtWebEngine will not be built.

После некоторого поиска я знаю причину этого предупреждения. QtWebEngine использует pkg-config, чтобы получить необходимые библиотеки (например, xtst, xcomposite, ...) и взять библиотеки в моей хост-системе вместо использования скопированных пакетов из raspberry.

Как его настроить, чтобы использовать скопированные файлы из raspberry sysroot?

0
Walter 27 Июл 2020 в 09:27

1 ответ

Лучший ответ

Если кажется, что отсутствуют только библиотеки xtst, xcomposite, xi и т. Д., Они находятся на Pi в / usr / share. Таким образом, ваш системный корневой каталог также должен синхронизировать эту папку.

0
Andy 11 Авг 2020 в 21:03