树莓派3B+ 编译Qt源码

最近想在树莓派上安装个Qt的环境,正好手头上有之前玩过的树莓派3B+(4B去年加价卖给矿老板了),所以就把之前用来做游戏机的树莓派3B+来搭建环境了。

首先当然是刷系统,我选择的刷系统的方式是去官方下载刷系统的工具直接刷。

 系统选择的是一个64位版本,就是因为这个版本比较新,所以在编译的时候一直报错告诉我不行。

 然后开始编译:

可选功能
可选功能要安装的软件包配置选项
蓝牙

bluez libbluetooth-dev

gstreamer 多媒体框架支持

Wayland开发包是必需的,因为它是Qt使用的gstreamer标头所要求的。

libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad libgstreamer-plugins-bad1.0-dev gstreamer1.0-pulseaudio gstreamer1.0-tools gstreamer1.0-alsa

libwayland-dev

Linux ALSA音频支持

libasound2-dev

脉冲音频支持

pulseaudio libpulse-dev

支持各种数据库(PostgreSQLMariaDB / MySQL)

libpq-dev libmariadbclient-dev

使用 CUPS 的打印支持

libcups2-dev

威兰支持

libwayland-dev

X11 支持

libx11-dev libxcb1-dev libxext-dev libxfix-dev libxcomposite-dev libxcursor-dev libxtst-dev libxrandr-dev libfontconfig1-dev libfreetype6-dev libx11-xcb-dev libxext-dev libxfixes-dev libxxi-dev libxrender-dev libxcb1-dev libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-util0-dev libxcb-dev libxcb-dev libxkbcommon-devlibxkbcommon-x11-dev

QtWebEngine

Required: flex bison gperf libre2-dev libnss3-dev libdrm-dev

Optional: libxml2-dev libxslt1-dev libminizip-dev libjsoncpp-dev liblcms2-dev libevent-dev libprotobuf-dev protobuf-compiler

raspbian 中的可选不可用的版本:libopus-dev libvpx-dev

注意:我们强烈建议将 QtWebEngine 与基本 Qt 分开构建

libzstdlibzstd-dev
可及性

libatspi-dev

SCTP [1][2]]

libsctp-dev

-sctp

我全部安装了,有的安装,没有的也就不管了。

在 Raspberry Pi OS 上为 Raspberry Pi 构建 Qt 5.15 LTS |TalOrg

树莓派Qt系列教程30:源码方式搭建Qt开发环境 - 树莓派QT教程 微雪课堂 (waveshare.net)

编译过程主要参考这两个博客,但是这两个都是比较旧的,其中编译的时候需要注意的地方。

其他的都没什么问题,唯一的问题就是在这篇博客中在 Raspberry Pi OS 上为 Raspberry Pi 构建 Qt 5.15 LTS |TalOrg

 直接用他的是不行的,

我的编译参数:

PKG_CONFIG_LIBDIR=/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig \
../qt-everywhere-src-5.15.2/configure -platform  linux-rpi4-v3d-g++ \
-v \
-opengl es2 -eglfs \
-no-gtk \
-opensource -confirm-license -release \
-reduce-exports \
-force-pkg-config \
-nomake examples -no-compile-examples -nomake tests \
-skip qtwayland \
-skip qtwebengine \
-no-feature-geoservices_mapboxgl \
-qt-pcre \
-no-pch \
-ssl \
-evdev \
-system-freetype \
-fontconfig \
-prefix /opt/Qt/5.15.2 \
-qpa eglfs

第一点,我编译的是Qt5.15.2他的是Qt5.15.5,

第二点是,PKG_CONFIG_LIBDIR=/usr/lib/aarch64-linux-gnu/pkgconfig:/usr/share/pkgconfig 第一行的这个编译参数他的跟我的不一样,我是按照我的系统找到的。

第三点:我使用的是树莓派3B+ ,而这个是树莓派4B,而且我用的是64位系统,所以这个参数要选这个 -platform linux-rpi4-v3d-g++不然会出这样的错误。-mfpu=crypto-neon-fp-armv8

编译完成:

直接make就可以,如果也可以make -j4  后面的4代表着几个核心,个人建议4核心的树莓派写3就行,因为要留一个核心做其他事情,编译源码树莓派3B+ 我这估计运行了12个小时以上。

这是结果:

 然后直接: sudo make install

然后进入到 /opt/Qt5.12/bin 执行 ./qmake -v    (为什么是Qt5.12而不是Qt5.15,因该是我上面的抄的编译命令没有该全)

  搭建环境:

1.sudo nano /usr/share/qtchooser/qt5-arm-linux-gnueabihf.conf

把里面内容替换成

/opt/Qt5.12/bin
/opt/Qt5.12/lib
2.  命令:vim ~/.bashrc   在最后一行添加  export QT_SELECT=qt5-arm-linux-gnueabihf

注意:一定不要加后缀conf 

这个就是上面的文件名

3. 运行 source ~/.bashrc

4. 测试 qmake -v 

Index of /official_releases/qtcreatorhttps://download.qt.io/official_releases/qtcreator

编译Qt Creator 4.14.2

下载地址

Index of /archive/qtcreator/4.14/4.14.2

解压:

tar -xvf qt-creator-opensource-src-5.0.3.tar.xz

新建文件夹用来编译(影子编译)

 mkdir qtcreator-build

cd qtcreator-build

编译

qmake -r ../qt-creator-opensource-src-5.0.3

然后就是漫长的编译:

 make -j3

大约12小时 

然后 sudo  make install 

sudo cp /share/applications/org.qt-project.qtcreator.desktop /usr/share/applications/

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波雅_汉库克

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值