Я пытаюсь сделать кросс-компиляцию Qt 5 для Raspberry Pi 3 в соответствии с этим уроком: https://medium.com/@amirmann/how-to-cross-compile-qt-for-raspberry-pi-3-on-linux-ubuntu-for-beginners-75acf2a078c.
Все хорошо, но когда я выполняю:
sudo ./configure -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=$RPI_TOOLCHAIN -sysroot $RPI_SYSROOT -opensource -confirm-license -optimized-qmake -reduce-exports -release -make libs -prefix /usr/local/qt5pi -skip qtwebkit
это сообщение появляется в терминале:
Creating qmake...
.Done.</p>
<p>This is the Qt Open Source Edition.</p>
<p>You have already accepted the terms of the Open Source license.</p>
<p>Running configuration tests...
Checking for valid makespec... Note: Also available for Linux: linux-clang linux-icc</p>
<p>ERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken.</p>
<p>Check config.log for details.
и в файле config.log, есть:
Командная строка: -opengl es2 -device linux-rasp-pi-g ++ -device-option> CROSS_COMPILE = / home / riahi / инструменты для кросс-компиляции / tools / arm-bcm2708 / gcc-linaro-arm-> linux-gnueabihf -raspbian-x64 / bin / arm-linux-gnueabihf- -sysroot / mnt / rasp-pi-> rootfs -opensource -confirm-license -optimized-qmake -reduce-exports -release -> make libs -prefix / usr / local / qt5pi -no-use-gold-linker
выполнение проверки конфигурации
+ cd /home/riahi/Qt5.10.0/5.10.0/Src/config.tests/verifyspec &&> /home/riahi/Qt5.10.0/5.10.0/Src/qtbase/bin/qmake "CONFIG - = qt debug_and_release > app_bundle lib_bundle "" CONFIG + = общая консоль warn_off single_arch ">" QMAKE_CFLAGS + = --sysroot = / mnt / rasp-pi-rootfs "" QMAKE_CXXFLAGS + = -> sysroot = / mnt / rasp-pi-rootfs "" QMAKE_LFLAGS + = --sysroot = / mnt / rasp-pi-rootfs "-> ранний" CONFIG + = cross_compile "> /home/riahi/Qt5.10.0/5.10.0/Src/qtbase/config.tests/verifyspec
+ cd /home/riahi/Qt5.10.0/5.10.0/Src/config.tests/verifyspec && MAKEFLAGS => / usr / bin / make clean && MAKEFLAGS = / usr / bin / make
rm -f verifyyspec.o
rm -f * ~ core * .core
/ home / riahi / инструменты для кросс-компиляции / инструменты / arm-bcm2708 / gcc-linaro-arm-linux-gnueabihf-raspbian-x64 / bin / arm-linux-gnueabihf-g ++ -c -pipe -marm -mfpu = vfp -mtune = arm1176jzf-s -march = armv6zk -mabi = aapcs-linux -mfloat-abi = hard --sysroot = / mnt / rasp-pi-rootfs -O2 -std = gnu ++ 11 -w -fPIC -I / home / riahi / Qt5.10.0 / 5.10.0 / Src / qtbase / config.tests / verifyyspec -I. -I / home / riahi / Qt5.10.0 / 5.10.0 / Src / qtbase / mkspecs / devices / linux-rasp-pi-g ++ -o verifyyspec.o /home/riahi/Qt5.10.0/5.10.0/Src/ qtbase / config.tests / verifyspec / verifyspec.cpp
/ home / riahi / инструменты для кросс-компиляции / инструменты / arm-bcm2708 / gcc-linaro-arm-linux-gnueabihf-raspbian-x64 / bin / arm-linux-gnueabihf-g ++ -mfloat-abi = hard --sysroot = / mnt / rasp-pi-rootfs -Wl, -O1 -Wl, -rpath-link, / mnt / rasp-pi-rootfs / opt / vc / lib -Wl, -rpath-link, / mnt / rasp-pi-rootfs / usr / lib / arm-linux-gnueabihf -Wl, -rpath-link, / mnt / rasp-pi-rootfs / lib / arm-linux-gnueabihf -o verifyyspec verifyyspec.o
/home/riahi/crosscompile-tools/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/ .. /../../../arm-linux-gnueabihf/bin/ld: не удается найти crt1.o: такого файла или каталога нет
/home/riahi/crosscompile-tools/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/ .. /../../../arm-linux-gnueabihf/bin/ld: не удается найти crti.o: нет такого файла или каталога
/home/riahi/crosscompile-tools/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/ .. /../../../arm-linux-gnueabihf/bin/ld:/home/riahi/crosscompile-tools/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin /../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/lib/libstdc++.so: формат файла не распознан; рассматривается как скрипт компоновщика
/home/riahi/crosscompile-tools/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/ .. /../../../arm-linux-gnueabihf/bin/ld:/home/riahi/crosscompile-tools/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin /../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/lib/libstdc++.so:1: синтаксическая ошибка
collect2: error: ld вернул 1 состояние выхода
Makefile: 66: рецепт для цели «verifyyspec» не удался
make: *** [verifyyspec] Ошибка 1
Я думаю, что основные проблемы в этом файле:
- не может найти crt1.o: нет такого файла или каталога
- не может найти crti.o: нет такого файла или каталога
- .... / libstdc ++. So: формат файла не распознан; рассматривается как скрипт компоновщика
Я так растерялся и несколько дней борюсь с этими проблемами.
Я новичок
Кто-нибудь может мне помочь?