是否有关于如何在Raspberry Pi3上构建Qt5.6甚至5.5的工作指南?
我在Wiki上找到了一些指南,这些指南在某些方面似乎都不完整,我尝试的最后一个是:
https://wiki.qt.io/RaspberryPi2EGLFS
直到我到达之前一切正常:
./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++.
我不确定如何进一步发展,谢谢。
编辑,还有更多信息:
我有一个Raspberry Pi 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 ++:not found
我去了:
~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin
输入: 臂-Linux的gnueabihf-G ++
它没有安装,所以: sudo apt-get install g ++ - arm-linux-gnueabihf
安装好了,然后再次尝试了configure指令,结果相同,还是找不到arm-linux-gnueabihf -g ++
编辑2016/06/12 ...... 我尝试了另一个来源:
这也存在问题,有两个库存在问题:
libjpeg62-dev and libxcb-sync0-dev
任何人都可以向我推荐准确且有效的信息吗?
编辑2016/06/13,在按照RSATom发布的信息后,我尝试了维基页面上的信息并下载了Qt,两者在执行配置时都会产生相同的结果......
运行配置测试(第2阶段)...... 无法处理平台' devices / linux-rasp-pi2-g ++'的makepec。 Project ERROR:找不到编译器/ home / pi / raspi / tools / arm-bcm2708 / gcc-linaro-arm-linux-gnueabihf-raspbian / bin / arm-linux-gnueabihf-g ++。检查CROSS_COMPILE -device-option的值 无法读取qmake配置文件/home/pi/qtbase/mkspecs/devices/linux-rasp-pi2-g++/qmake.conf。 处理项目文件时出错:/ dev / null
请 make: *未指定目标且未找到makefile。停止。 pi @ pi3:〜/ qtbase $ make install make:* 没有规则来制定目标'安装'。停止。
禁用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来修改包含和库搜索路径。
好的,从头开始并按照以下信息开始:
https://wiki.qt.io/RaspberryPi2EGLFS
首先,我在Pi 3上检查了我的操作系统:
uname -a
结果:
Linux pi3 4.4.9-v7+ #884 SMP Fri May 6 17:28:59 BST 2016 armv7l GNU/Linux
然后:
lsb_release -a
结果:
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
确定了这一点后,我跳到了第3步。
第4步,我第一次没有正确阅读,我不想要跨平台开发,我想直接在Pi 3上开发。
但是我有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
/家庭/西蒙/ raspi / qtbase / qtbase / mkspecs /装置/ Linux的锉刀PI2-G ++
感谢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无法安装。
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,链接:
令人沮丧的是,上面的链接看起来很有希望,但我找不到任何提到的Pi 3 Qt图像的链接。
2016/06/29 今天发现,看起来很有希望,今晚会尝试: Building Your Own Embedded Linux Image
我快速没有耐心了,按照上述链接上的说明操作,我真的不认为本页的作者已尝试使用链接上提供的工具。
QtCreator中的菜单引用不存在。它不容易理解,他们是否想要促进产品的使用?我每天都在工作中使用Qt环境并且它非常出色,但为什么在应该支持的平台上扮演角色是如此困难?
我在这一行上只改变了5.6到5.7:
git clone git://code.qt.io/qt/qtbase.git -b 5.6
它的工作原理......至少我在Ubuntu 16.04上构建并制作了5.7,当它完成时我会将它同步到...我会回来发布结果。
看我的回答......
答案 0 :(得分:7)
最后成功,请点击此链接:
Installing 5.6 step by step instructions
最后我实际安装了5.7并且效果很好!只需将git pull参数从5.6更改为5.7即可!
非常感谢RSATom
答案 1 :(得分:1)
尝试安装libgl1-mesa-dev,libglu1-mesa-dev和mesa-common-dev。
答案 2 :(得分:0)
编辑 - 更新 - 仅限商业许可的QT设备创建
Link describing preparing RaspPi for Boot to QT
不确定这是否会对您有所帮助,因为您似乎正在尝试构建自己的,但看起来最新版本可能会为您提供另一种选择。
在6月16日刚刚发布的版本5.7的release notes
中设备创建的Qt
此外,设备创建的Qt已收到更新,现已发货 Qt 5.7。在这个版本中,我们添加了开箱即用的支持 一套新硬件:
Rasberry Pi 3(32位模式) - 请注意这是他们的拼写
来自他们的博客......
https://blog.qt.io/blog/2016/06/16/qt-5-7-for-device-creation/
新设备图片
我们还更新了预构建软件的硬件选择 图片有两个新增内容:
Raspberry Pi 3
Intel® NUC Kit DE3815TYKHE
对于这些以及其他常见的开发板,我们提供了 使用我们的SDK安装程序预先构建的图像。您可以使用闪存设备 图像并立即开始嵌入式开发。