VTK(1):ubuntu 22.04 源码编译安装 Qt5.15.9
安装依赖库
sudo apt-get install gcc libdbus-1-dev libnss3-dev gedit flex bison gperf libxcb* qtchooser build-essential libgl1-mesa-dev libglu1-mesa-dev libegl1-mesa-dev freeglut3-dev libxkbcommon-x11-dev libxkbcommon-dev libxrender-dev libx11-dev libx11-xcb-dev
libsrtp
需要编译安装:https://github.com/cisco/libsrtp#installing-and-building-libsrtpassimp
需要编译安装:< https://github.com/assimp/assimp.git>
如下为安装qtwebengine
依赖项:
sudo apt-get install bison build-essential gperf flex python2 libasound2-dev libcups2-dev libdrm-dev libegl1-mesa-dev libnss3-dev libpci-dev libpulse-dev libudev-dev nodejs libxtst-dev gyp ninja-build
sudo apt-get install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev libfontconfig1-dev libxss-dev libwebp-dev libjsoncpp-dev libopus-dev libminizip-dev libavutil-dev libavformat-dev libavcodec-dev libevent-dev libvpx-dev libsnappy-dev libre2-dev libprotobuf-dev protobuf-compiler libxkbfile-dev
如下为安装qtpdf
依赖项:
sudo apt-get install build-essential gcc g++ cmake libxkbcommon-x11-dev libgl1-mesa-dev libglu1-mesa-dev libfontconfig1-dev libmysqlclient-dev libxcb-xfixes0-dev libxcb-util-dev
sudo apt install bison build-essential gperf flex python2 libasound2-dev libcups2-dev libdrm-dev libegl1-mesa-dev libnss3-dev libpci-dev libpulse-dev libudev-dev nodejs libxtst-dev gyp ninja-build
sudo apt install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev libfontconfig1-dev libxss-dev libsrtp2-dev libwebp-dev libjsoncpp-dev libopus-dev libminizip-dev libavutil-dev libavformat-dev libavcodec-dev libevent-dev libvpx-dev libsnappy-dev libre2-dev libprotobuf-dev protobuf-compile
引用自 QtPDF 的编译与试用 。
从源码安装 Qt5
Qt-5.15.6
以及以前版本应该有问题,编译查找assimp
出错。
官方下载目录:https://download.qt.io/official_releases/qt/5.15。
镜像下载目录: http://mirrors.ustc.edu.cn/qtproject/official_releases/qt/5.15 。
解压并进入qt-everywhere-src-5.15.9
目录。
修改源文件:
# qtquick3d/src/plugins/assetimporters/assimp/assimp.pro
# 13行: QMAKE_USE_PRIVATE += quick3d-assimp
编译命令:
git submodule update --init
mkdir build && cd build
../configure -xcb -opensource -confirm-license -proprietary-codecs -no-feature-webengine-system-ninja -nomake examples -nomake tests
make -j
sudo make install
# 或者使用如下命令编译
# gmake && sudo gmake install
# 设置/选择 qmake,命名为 qt-5.15.9
qtchooser -install qt-5.15.9 /usr/local/Qt-5.15.9/bin/qmake
设置环境变量:
export QTDIR=/usr/local/Qt-5.15.9
export PATH=$QTDIR/bin:$QTDIR/bin:$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$QTDIR/man:$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$QTDIR/lib:$QTDIR/lib:$LD_LIBRARY_PATH
export QT_QPA_PLATFORM_PLUGIN_PATH=${QTDIR}/plugins/
export QT_QPA_FONTDIR=${QTDIR}/lib/fonts
export QT_SELECT=qt-5.15.9
设置完 LD_LIBRARY_PATH
之后,APP 开发 CMake
find_package
可以找到Qt
。
- 如果 Qt APP 找不到字体,需要设置
QT_QPA_FONTDIR
路径,并检查fonts
目录下是否有字体文件,如*.ttf
文件,如果没有则从其他字体目录拷贝过来即可。 如Qt-fonts,下载下来之后,拷贝到Qt
的安装目录:sudo cp -r Qt-Fonts/fonts /usr/local/Qt-5.15.9/lib/
。
QtWebEngine可能的错误处理
错误信息
/usr/bin/python2 ../../3rdparty/chromium/third_party/catapult/tracing/bin/generate_about_tracing_contents --outdir gen/content/browser/tracing
FAILED: gen/content/browser/tracing/about_tracing.js gen/content/browser/tracing/about_tracing.html
/usr/bin/python2 ../../3rdparty/chromium/third_party/catapult/tracing/bin/generate_about_tracing_contents --outdir gen/content/browser/tracing
Traceback (most recent call last):
.......
解决办法:
qtwebengine/src/3rdparty/chromium/third_party/catapult/tracing/tracing_build/generate_about_tracing_contents.py
defualt=True # Line 19, original is defualt=False
直接安装 Qt
sudo apt-get install qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools
sudo apt-get install qtcreator
sudo apt-get install qt5*
sudo apt install mesa-common-dev libfontconfig1
使用CMake开发Qt APP Demo
参考:
参考
- QtWebengine 5.15.10 with proprietary codecs, build problems on Ubuntu 22.04
- Building Qt 5 from Git
-Ubuntu编译安装QT5.15.2版本
下载及安装官方Qt
安装libxcb
sudo apt-get install libxcb*
从官网 下载 qt-opensource-linux-x64-5.14.2.run。
安装Qt 5.14.2
chmod +x qt-opensource-linux-x64-5.14.2.run
sudo ./qt-opensource-linux-x64-5.14.2.run
添加环境变量
export QTDIR=/opt/Qt5.14.2
LD_LIBRARY_PATH=${QTDIR}/5.14.2/gcc_64/lib:${QTDIR}/Tools/QtCreator/lib:${LD_LIBRARY_PATH}
PATH=${QTDIR}/5.14.2/gcc_64/bin:${QTDIR}/Tools/QtCreator/bin:${PATH}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构