Ubuntu ARMv8编译Qt源码以及QtCreator

最近需要在NVIDIA小盒子上面跑一个程序,一开始想着在Ubuntu x64下交叉编译一版,后来发现libqxcb.so 这个库在configure时就会一直报错,多方查找怀疑可能是由于硬件不支持在x64环境下编译AMR架构的xcb库。

所以最后在ARM下直接编译Qt源码了,在ARM下是可以编译成功 libqxcb.so 的,由于没有ARM下的QtCreator所以需要一起编译。

一、编译Qt源码

1. 编译前环境配置

cpp 复制代码
sudo apt-get update
sudo apt-get install gperf
sudo apt-get install libxcb*
sudo apt-get install build-essential libgl1-mesa-dev libglu1-mesa-dev libegl1-mesa-dev freeglut3-dev
sudo apt-get install flex
sudo apt-get install bison
sudo apt-get install libx11-dev libxext-dev libxtst-dev
sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev
sudo apt-get install libxkbcommon-x11-dev
sudo apt install libwayland-dev				// 编译源码时qtmultimedia中报错wayland-client.h
sudo apt install libclang-dev llvm          // 这俩是qtdoc的,要编译文档才装,因为这比较大

2. 编译前配置

cpp 复制代码
./configure -xcb -prefix /opt/Qt5.15.2 -skip qtlocation

解释:

-prefix 最后安装路径

-skip 跳过某个模块(qtlocation编译不过,各种尝试都没过,最终才跳过,如果知道如何可以编译过请通知,谢谢)

提示 webengine 警告时,可以先用上面命令,然后通过 qmake 单独编译一下,可能会缺依赖库自己查找一下

cpp 复制代码
qmake webengine源码路径/webengine.pro
make
sudo make install

二、编译QtCreator

下载地址: https://download.qt.io/archive/qtcreator/

编译时需要注意,QtCreator源码一定要和Qt源码对应,比如QtCreator 8.0源码就无法通过 Qt5.15的qmake编译成功,会报错需要Qt6的源码编译

是否适合当前版本,可以通过README.md中介绍确定

编译步骤:

cpp 复制代码
qmake ./qtcreator.pro
make
// PATH 为install路径,自行修改,如果不在非需sudo目录安装可以不加sudo
sudo make install INSTALL_ROOT=PATH    
相关推荐
꧁坚持很酷꧂1 天前
解决虚拟机Ubuntu22.04连接了串口设备但终端没有显示
ubuntu
hkhkhkhkh1231 天前
Linux设备节点基础知识
linux·服务器·驱动开发
HZero.chen1 天前
Linux字符串处理
linux·string
张童瑶1 天前
Linux SSH隧道代理转发及多层转发
linux·运维·ssh
汪汪队立大功1231 天前
什么是SELinux
linux
石小千1 天前
Linux安装OpenProject
linux·运维
柏木乃一1 天前
进程(2)进程概念与基本操作
linux·服务器·开发语言·性能优化·shell·进程
Lime-30901 天前
制作Ubuntu 24.04-GPU服务器测试系统盘
linux·运维·ubuntu
百年渔翁_肯肯1 天前
Linux 与 Unix 的核心区别(清晰对比版)
linux·运维·unix
胡闹541 天前
Linux查询防火墙放过的端口并额外增加需要通过的端口命令
linux·运维·windows