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    
相关推荐
cg501715 小时前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影16 小时前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain16 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon16 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu16 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu
Zero_to_zero123417 小时前
解决docker的ubuntu系统中文乱码问题
ubuntu·docker·容器
GalaxyPokemon17 小时前
Muduo网络库实现 [十] - EventLoopThreadPool模块
linux·服务器·网络·c++
自由鬼18 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve
瞌睡不来18 小时前
(学习总结32)Linux 基础 IO
linux·学习·io