[Tutorials] deepin 20.8 编译 QT5.15.5
Tofloor
poster avatar
feiling
deepin
2023-03-14 05:26
Author
  • 下载源码

下载地址:https://download.qt.io/archive/qt/5.15/5.15.5/single/qt-everywhere-opensource-src-5.15.5.tar.xz

  • 安装依赖
sudo apt-get install g++ '^libxcb.*-dev' libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev libxkbcommon-dev libxkbcommon-x11-dev
  • 如果需要QtWebEngine模块请安装下方依赖库
    sudo apt-get install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev  libfontconfig1-dev libxss-dev libsrtp0-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 libdbus-1-dev dbus libxkbfile-dev libfontconfig1-dev libcups2-dev libxtst-dev  bison build-essential gperf flex libasound2-dev libdrm-dev libegl1-mesa-dev libnss3-dev libpci-dev libpulse-dev libudev-dev nodejs gyp ninja-build
    
  • 开始编译
  1. 解压

    tar -xvf qt-everywhere-opensource-src-5.15.5.tar.xz
    
  2. 创建编译脚本

    mkdir build
    cd build
    vim autogen.sh
    
  3. autogen.sh中输入以下内容

    ../configure
    -v
    -opensource
    -confirm-license
    -prefix /home/yourpath/Qt-5.15.5
    -nomake examples
    -nomake tests
    -opengl es2
    -xcb
    -xcb-xlib \
    
  4. 运行 autogen脚本

    chmod +x autogen.sh
    ./autogen.sh
    
  5. 编译(用时较长)

    sudo make -j4  &&sudo make install -j4
    
Reply Favorite View the author
All Replies
青稚
deepin
2023-03-14 06:19
#1

不能打包成deb吗?

Reply View the author
fuuko
deepin
2023-03-14 16:17
#2

apt download qtbase5-dev

dpkg-buildpackage -b -us -uc

ok

Reply View the author
sammy-621
deepin
2023-03-14 17:14
#3

这样编译后,Qt Creator里能支持中文录入了吗?

Reply View the author
feiling
deepin
2023-03-14 17:25
#4
青稚

不能打包成deb吗?

可以😄

Reply View the author
feiling
deepin
2023-03-14 17:27
#5
sammy-621

这样编译后,Qt Creator里能支持中文录入了吗?

没遇到您的问题,你正在使用的QT Creator 是商店下载的吗

Reply View the author
爱开发
deepin
2023-03-14 19:05
#6

编译出来的包含所有组件没有?如果没包含,用它官方的那个单文件安装也没差吧?

Reply View the author
bluesky_
deepin
2023-03-14 19:06
#7
sammy-621

这样编译后,Qt Creator里能支持中文录入了吗?

应该是不的,建议自己编译对应的fcitx输入插件,新版的qtcreator用的是qt6编译出来的,你的fcitx输入插件也必须要用qt6编译出来

编译流程如下


1.sudo apt install git cmake extra-cmake-modules gcc g++ libxkbcommon-dev
2.git clone [email protected]:fcitx/fcitx-qt5.git
3.cd fcitx-qt5
4.vim CMakeLists.txt
# 找到下面对应的代码块,要支持哪个就打开哪个,我这里编译Qt6的输入支持模块
option(ENABLE_QT5 "Enable Qt5" Off)
option(ENABLE_QT6 "Enable Qt6 im module" On)
option(ENABLE_LIBRARY "Qt library" Off)

5.在编译前导入qt所在目录 export PATH=/opt/apps/Qt/6.3.1/gcc_64/bin:$PATH
6.mkdir build && cd build
7.cmake .. -DENABLE_LIBRARY=false
8.make -j12
9.ls qt6/platforminputcontext | grep *.so
#得到对应的输入插件
10.把编译出来的动态库放到对应的文件夹,例如/opt/apps/Qt/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts
# 这个方法可行可靠,但是要安装qt6对于不开发qt的人员来说非常不友好,虽然我编译好了,但是我用的是debian sid,deepin多半用不了。
Reply View the author
sammy-621
deepin
2023-03-15 00:25
#8
bluesky_

应该是不的,建议自己编译对应的fcitx输入插件,新版的qtcreator用的是qt6编译出来的,你的fcitx输入插件也必须要用qt6编译出来

编译流程如下


1.sudo apt install git cmake extra-cmake-modules gcc g++ libxkbcommon-dev
2.git clone [email protected]:fcitx/fcitx-qt5.git
3.cd fcitx-qt5
4.vim CMakeLists.txt
# 找到下面对应的代码块,要支持哪个就打开哪个,我这里编译Qt6的输入支持模块
option(ENABLE_QT5 "Enable Qt5" Off)
option(ENABLE_QT6 "Enable Qt6 im module" On)
option(ENABLE_LIBRARY "Qt library" Off)

5.在编译前导入qt所在目录 export PATH=/opt/apps/Qt/6.3.1/gcc_64/bin:$PATH
6.mkdir build && cd build
7.cmake .. -DENABLE_LIBRARY=false
8.make -j12
9.ls qt6/platforminputcontext | grep *.so
#得到对应的输入插件
10.把编译出来的动态库放到对应的文件夹,例如/opt/apps/Qt/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts
# 这个方法可行可靠,但是要安装qt6对于不开发qt的人员来说非常不友好,虽然我编译好了,但是我用的是debian sid,deepin多半用不了。

感谢,我试下效果

Reply View the author
feiling
deepin
2023-03-15 04:40
#9
爱开发

编译出来的包含所有组件没有?如果没包含,用它官方的那个单文件安装也没差吧?

QtWebEngine 模块需要提前安装说明中的依赖库

Reply View the author