当前位置: 首页 > article >正文

从源码编译Qt5

1 需要做的前期准备

配置好C++的编译环境

  • win:推荐MSVC 也就是下载Visual Studio(建议2019)
  • linux: gcc

2 下载项目源码

  • 仓库地址:https://github.com/qt/qt5.git 把他clone下来
  • 可以自己选择需要的模块下载,例如qtbase:git submodule update --init qtbase
  • 如果需要直接下载所有的模块:git submodule update --init --recursive

3 开始编译源码

  • 需要注意是编译x86还是x64版本的,调用 x86 Native Tools Command Prompt for VS 2019 (根据自己需要编译的目标和本地的环境来进行选择)
  • win中需要的编译工具
    • Supported compiler (Visual Studio 2012 or later,
      MinGW-builds gcc 4.9 or later)
    • Perl version 5.12 or later [https://strawberryperl.com/]
    • Python version 2.7 or later [http://www.activestate.com/activepython/]
    • Ruby version 1.9.3 or later http://rubyinstaller.org/
  • linux 中就比较简单了,缺什么环境就直接 sudo apt-get install就可以了。
# 调起编译环境(只在win中需要)
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat"
# 进入源码根目录
cd qt5
# 配置编译环境
./configure -prefix <安装qt的目录>
# 我这里的安装命令是:
./configure -prefix <安装目录> -opensource -confirm-license -nomake examples -nomake tests -recheck-all
# 如果是编译单个模块:
make module-<module name>

make -j4
make install

4 编译完成

  • 编译完成后,会在安装目录下生成bin,lib,include等文件夹,大概效果如图所示:
    在这里插入图片描述

http://www.kler.cn/a/470751.html

相关文章:

  • HTML 迷宫游戏
  • SQL从入门到实战
  • 三维卷积( 3D CNN)
  • [Linux]Mysql9.0.1服务端脱机安装配置教程(redhat)
  • Python递归(汉诺塔问题)
  • Mybatis(day09)
  • RWKV 语言模型
  • 2025年的加密软件市场如何?
  • 原型模式详解与实践
  • 【动态规划篇】穿越算法迷雾:约瑟夫环问题的奇幻密码
  • el-date-picker 不响应change事件的解决办法
  • 【每日学点鸿蒙知识】字体大小,镜像语言间距、禁止分屏、Router与Navigation
  • 【Python系列】使用 `psycopg2` 连接 PostgreSQL 数据库
  • 一文理解区块链
  • 【老白学 Java】保存 / 恢复对象状态
  • 【AI落地】AI生成测试用例,claude or gpt?(提效至少 50%)
  • 基于Java的宠物领养与寄养系统(源码+lw+部署文档+讲解),源码可白嫖!
  • Aleo项目参与指南——DePIN360
  • Java内存管理:不可达对象分析与内存泄漏优化技巧 Eclipse Memory Analyzer
  • ChromeDriver 版本不匹配问题解决,ChromeDriver最新版本下载安装教程
  • 【SQL】COUNT()函数 用法详解
  • Java 集合 Collection、List、Set
  • 【一个HTTP请求和一个HTTP会话的区别】
  • 安装Anaconda搭建Python环境,并使用VSCode作为IDE运行Python脚本
  • Android Telephony | 协议测试针对 test SIM attach network 的问题解决(3GPP TS 36523-1-i60)
  • 警务协同办公系统(源码+文档+部署+讲解)