关于树莓派3b交叉编译Qt5.9.1结果(嵌入式平台)
本帖最后由 angelus 于 2017-7-26 12:51 编辑今天终于完美的在树莓派3上交叉编译qt5.9.1成功
从半个月前开始买了树莓派玩玩,就一直在尝试把qt5.9.1运行在树莓派3上,
先后尝试了在树莓派上编译,在32位linux下交叉编译,在64位linux下交叉编译,上网查找各种教程。
遗憾的是一直都没有完美的编译出来,要么就是缺少 播放器后端,要么就是没法开启opengl es2 ,
最好的结果就是交叉编译后需要把 工程放在特定目录下才能正常编译,还需要忽略qtwebengine模块
总之就是各种缺陷,最近突然发现国外已经有人为此开发出了编译脚本,就花费了周末两天来实验
第一天基本上各种坑,一天就在失败中结束。
不服输第二天开始尝试开发版的编译脚本,终于在经过各种问题后,编译完美成功!
选择编译的模块包括:
qtbase qtdeclarative
qtquickcontrols
qtquickcontrols2
qtmultimedia
qtsvg
qtxmlpatterns
qtwebsockets
qtserialport
qtwebchannel
qtremoteobjects
qtvirtualkeyboard
qtwebengine
qtnetworkauth
qtserialbus
qtspeech
qtcharts
qtgamepad
qtgraphicaleffects
(piomxtextures ffmpeg)非qt的第三方模块
测试环境pi3字符界面下 开启eglfs进行显示 (非x11图形界面)
1 qtmultimedia ok 可以播放1080P的mp4影片
2:qtquickcontrols2 ok 自己写的例子
3: qtremoteobjects ok 自己写的例子同步
4: qtserialport ok 自己写 语音识别模块的串口读写
5: qtwebengine ok 自带例子 quicknanobrowser 可以完美运行,访问qt的主页)
其他模块没有测试,不过应该没啥问题,我树莓派外接的是 7寸电容屏,触摸没有任何问题!
最近会更新教程到论坛.
其实网上有很多其他版本的编译,我非要选择去编译5.9.1的原因是 qtquickcontrols2和qtremoteobjects模块
其他版本要么没有,要么支持也不全
不错啊,呵呵,可以放几张图片上来。 楼主 有用webengine读取本地视频的例子吗? 这个真的很折磨人呀 请教大神个问题。
我也是在把Qt5.9移值到树莓派中,在用Qt的例子player播放视频时候出现
Unable to query physical screen size, defaulting to 100 dpi.
To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
(player:11191): GLib-GObject-CRITICAL **: g_object_set: assertion `G_IS_OBJECT (object)' failed
(player:11191): GStreamer-CRITICAL **: gst_object_ref: assertion `object != NULL' failed
(player:11191): GStreamer-CRITICAL **: gst_bin_add_many: assertion `GST_IS_ELEMENT (element_1)' failed
(player:11191): GStreamer-CRITICAL **: gst_element_link_pads_full: assertion `GST_IS_ELEMENT (src)' failed
(player:11191): GStreamer-CRITICAL **: gst_element_get_static_pad: assertion `GST_IS_ELEMENT (element)' failed
(player:11191): GStreamer-CRITICAL **: gst_ghost_pad_new: assertion `GST_IS_PAD (target)' failed
(player:11191): GStreamer-CRITICAL **: gst_element_add_pad: assertion `GST_IS_PAD (pad)' failed
(player:11191): GStreamer-CRITICAL **: gst_object_unref: assertion `object != NULL' failed
(player:11191): GStreamer-CRITICAL **: gst_element_set_state: assertion `GST_IS_ELEMENT (element)' failed
(player:11191): GStreamer-CRITICAL **: gst_element_set_state: assertion `GST_IS_ELEMENT (element)' failed
(player:11191): GStreamer-CRITICAL **: gst_bin_remove: assertion `GST_IS_ELEMENT (element)' failed
(player:11191): GStreamer-CRITICAL **: gst_element_link_pads_full: assertion `GST_IS_ELEMENT (src)' failed
Linking video output element failed
请问怎么不办?谢谢!:lol 楼主可以分享一下脚本资源吗?
我的邮箱329480955@qq.com
谢谢! 能分享一下脚本吗?学习学习,谢谢。 有教程 或者资料吗小白一个急需指导哈哈哈哈 顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
顶顶顶顶顶顶顶顶顶顶顶:顶顶顶顶顶顶顶:):):) 楼主能完美运行QML吗,我使用qt自己编的,运行QML很卡诶 学习了,真的是好文章,感谢楼主分享!
能分享一下脚本吗?学习学习,谢谢。
424670725@qq.com
页:
[1]