Я использую 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?
1 ответ
Если кажется, что отсутствуют только библиотеки xtst, xcomposite, xi и т. Д., Они находятся на Pi в / usr / share. Таким образом, ваш системный корневой каталог также должен синхронизировать эту папку.
Похожие вопросы
Новые вопросы
qt
Qt - это кроссплатформенная среда разработки приложений, широко используемая для разработки прикладного программного обеспечения, которая может работать на различных программных и аппаратных платформах с минимальными изменениями в базовом коде или без таковых, при этом обладая мощью и скоростью собственных приложений. Qt доступен как с коммерческими, так и с открытыми лицензиями.