在树莓Pi3或/和Pi zero上构建Qt5.6或Qt5.7
关于如何在覆盆子Pi3上构建Qt5.6甚至5.5,是否有工作指南 我在维基上找到了一些指南,它们在某种程度上似乎都不完整,我最后一次尝试的是: 在我达到以下目标之前,这一切都是正常的:在树莓Pi3或/和Pi zero上构建Qt5.6或Qt5.7,qt,raspberry-pi3,qt5.6,Qt,Raspberry Pi3,Qt5.6,关于如何在覆盆子Pi3上构建Qt5.6甚至5.5,是否有工作指南 我在维基上找到了一些指南,它们在某种程度上似乎都不完整,我最后一次尝试的是: 在我达到以下目标之前,这一切都是正常的: ./configure -release -opengl es2 -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbi
./configure -release -opengl es2 -device linux-rasp-pi2-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf- -sysroot ~/raspi/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -v
我不确定这是否是因为它适用于Pi2,但这会导致以下错误:
The OpenGL ES 2.0 functionality test failed!
You migh need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in /home/.../raspi/qtbase/mkspace/mkspecs/devices/linux-rasp-p2-g++.
我不知道该如何进一步,谢谢
编辑,这里有更多的信息:
我有一个树莓皮3,运行:
Linux pi3 4.1.21.v7+ #872 SMP Wed Apr 6 17:34:14 BST 2016 armv71 GNU/Linux
我看到的第一个错误是:
./configure:3497:./configure:/home/simon/raspi/tools/arm-bcm2708/gcc linaro arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++:未找到
我去了:
~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin
并键入:
arm-linux-gnueabihf-g++
它没有安装,因此:
sudoapt-get安装g++-armlinux-gnueabihf
安装正常,然后再次尝试配置指令,结果相同,仍然找不到arm-linux-gnueabihf-g++
编辑2016/06/12。。。
我尝试了另一个来源:
这也有问题,有两个库存在问题:
libjpeg62-dev and libxcb-sync0-dev
有人能给我提供准确有效的信息吗
编辑2016/06/13,在跟踪RSATom发布的信息后,我尝试了wiki页面上的信息和下载Qt,在执行配置时都得到了相同的结果
正在运行配置测试(第2阶段)。。。
无法处理平台“devices/linux-rasp-pi2-g++”的makespec
项目错误:未找到编译器/home/pi/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++。检查交叉编译-设备选项的值
无法读取qmake配置文件/home/pi/qtbase/mkspecs/devices/linux-rasp-pi2-g++/qmake.conf。
处理项目文件时出错:/dev/null
制造
make:*未指定目标,也未找到makefile。停止
pi@pi3:~/qtbase$make安装
make::没有规则使目标“安装”。停下来
第二次尝试,2016/06/14。。。
已禁用OpenGL ES 2.0。
OpenGL ES 2.0功能测试失败!
您可能需要通过在/home/pi/raspi/qt5pi/qtbase/mkspecs/devices/linux-rasp-pi2-g++中编辑QMAKE_INCDIR_OPENGL_ES2、QMAKE_LIBDIR_OPENGL_ES2和QMAKE_LIBS_OPENGL_ES2来修改include和library搜索路径
第三次尝试,2016/06/15。。。
好的,从头开始,按照以下信息操作:
首先,我在Pi 3上检查了我的操作系统:
uname -a
结果:
Linux pi3 4.4.9-v7+ #884 SMP Fri May 6 17:28:59 BST 2016 armv7l GNU/Linux
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
然后:
结果:
Linux pi3 4.4.9-v7+ #884 SMP Fri May 6 17:28:59 BST 2016 armv7l GNU/Linux
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
确定了这一点后,我跳到第3步
第4步,我第一次没有正确阅读,我不想跨平台开发,我想直接在PI3上开发
然而,我有Oracle VirtualBox运行版本5.0.20 r106931和Ubuntu虚拟机,启动了当前版本的Ubuntu:
uname -a
Linux simon-VirtualBox 3.19.0-59-generic #66-14.04.1-Ubuntu SMP Fri May 13 17:27:10 UTC 2016 x86_64 x84_64 GNU/Linuxu
lsb_release -a
No LSB modules are available.
Dsitributor ID: Ubuntu
Description: Ubuntu 14.04.4 LTS
Release: 14.04
Codename: trusty
已完成步骤4、5、6
将步骤7中的链接替换为:
wget download.qt.io/official_releases/qt/5.6/5.6.0/single/qt-everywhere-opensource-src-5.6.0.tar.gz
然后提取:
tar -zxvf qt-everywhere-opensource-src-5.6.0.tar.gz
完成后,将文件夹“qt-everywhere-opensource-src-5.6.0”重命名为“qtbase”:
mv qt-everywhere-opensource-src-5.6.0 qtbase
然后在以下位置的克隆指令后继续执行步骤7:
cd qtbase
此时,滚动消息几秒钟后会出现许多错误,这些错误以以下内容结束:
OpenGL ES 2.0 disabled.
The OpenGL ES 2.0 functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in
/home/simon/raspi/qtbase/qtbase/mkspecs/devices/linux-rasp-pi2-g++
第四次尝试,2016/06/18。。。
多亏了RSATom的努力,事情取得了一些进展
我升级了Jessie的安装,使用了:
wget https://raw.githubusercontent.com/Topguy/Raspberry-Qt5-experiments/master/qt5_twolife_jessie_setup.sh
使下载的脚本可执行:
chmod +x qt5_twolife_jessie_setup.sh
执行脚本:
./qt5_twolife_jessie_setup.sh
这将添加用于更新的新存储库,更新系统:
sudo apt-get update
sudo apt-get upgrade
确保您拥有所有必需的工具:
sudo apt-get install build-essential
确保您拥有所需的opengl组件:
sudo apt get install libgl1-mesa-dev libglu1-mesa-dev
安装qt5:
sudo apt-get install qt5-default
再次更新系统:
sudo apt-get update
sudo apt-get upgrade
这就是我被卡住的地方,因为系统不允许我执行qtcreator的安装:
sudo apt-get install qtcreator
它会出错,如果我随后重新启动Pi,它将不会启动,我已经执行了两次此序列,虽然它似乎安装了Qt5.5,但它不完整并会阻塞Pi,或者至少在SD卡重新闪存之前不会启动
我现在正在寻找一个解决方案,以找出为什么Pi在安装此更新后不会预订,以及为什么qtcreator不会安装
第五次尝试,2016/06/19。。。
Qt5.7的下载来源:
wget http://download.qt.io/official_releases/qt/5.7/5.7.0/single/qt-everywhere-opensource-src-5.7.0.tar.gz
摘录:
tar -zxvf qt-everywhere-opensource-src-5.7.0.tar.gz
感谢您访问dbmitch,获取以下链接:
这太令人沮丧了,上面的链接看起来很有希望,但我找不到任何指向上述Pi3QT图像的链接
2016/06/29今天发现这个,看起来很有希望,今晚将尝试:
我很快就失去了耐心,按照上面链接上的说明,我真的不认为这个页面的作者用链接上可用的工具尝试过
QtCreator中存在不存在的菜单引用。这不容易理解,他们想推广产品的使用吗?我每天都在工作中使用Qt环境,它非常出色,但是为什么在一个应该支持的平台上扮演角色如此困难呢
2016/07/01第六次幸运?。。。
通过:
我只是在这行中将5.6改为5.7:
git clone git://code.qt.io/qt/qtbase.git -b 5.6
而且它很有效…至少我正在Ubuntu 16.04上构建和制作5.7,当它完成后,我会重新同步它…我会回来发布结果
请参阅我的答案…尝试安装libgl1 mesa dev、libglu1 mesa dev和mesa-common-dev 编辑-更新-QT设备创建仅用于商业许可 不确定这是否对您有帮助,因为您似乎正在尝试构建自己的,但最新版本可能会为您提供另一种尝试选项 在6月16日刚刚发布的5.7版本中 用于设备创建的Qt 另外,Qt for Device creation已收到更新,现在已发货 Qt为5.7。在这个版本中,我们添加了对 一套新硬件: Rasberry Pi 3(32位模式)请注意,这是它们的拼写