惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
Recent Announcements
Recent Announcements
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
J
Java Code Geeks
T
The Blog of Author Tim Ferriss
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
aimingoo的专栏
aimingoo的专栏
U
Unit 42
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG
T
Tailwind CSS Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 三生石上(FineUI控件)
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
博客园 - 司徒正美
腾讯CDC
I
InfoQ
GbyAI
GbyAI
博客园_首页

博客园 - 米粮二斗

人脑训练AI,AI训练人脑,有意思,左脚踩右脚,上天! 随着AI大语言模型的发展,最终全世界会统一到一个词元最少、表达最高效的语言,淘汰到目前大多数低效语言 我们人类就是量子计算机的一端,另一端连接造物主的显示器 IOS设计师是个大傻B 人类本身就是具身智能 以后的设备可能只有浏览器和终端 未来世界太过方便、科技发达,一部分人却怀念起旧时的生活,通过虚拟世界回到现在 现在的AI和人类做梦一样,只有逻辑,无法关联现实规则 计划成立一个反隐私组织 人类独立思考的能力最终会被AI吞噬 越高级智慧的生物可能更小型 人之所以成为人。不是因为达尔文的进化论 关于AI思考 世界一切皆为波 Zed for Windows从源代码编译 一直从小养在鱼缸里的鱼,它能否知道自己在鱼缸里? 操作系统发展随想 量子理论:人们现在所做的不仅可以改变未来,也可改变过去 个人语音信息助理AIS构想 使用MyBatis-Plus报错:Invalid bound statement (not found):无法使用selectById云云 关于git merge和git rebase的一点看法 使用Docker容器运行Jenkins自动化部署工具时,git获取源代码报错:Failed to connect to repository : Command "git ls-remote -h -- ssh:// HEAD" returned status code 128: stdout: stderr: Permission denied, please try again
从源代码构建Qt6开发工具
米粮二斗 · 2021-09-07 · via 博客园 - 米粮二斗

概述:

Qt是一个牛B的平台,不管是开发Windows平台、Linux平台,还是Mac平台的本地应用都很方便,后面还扩展到Android,近一两年又出了MCU(笔者也没用过),真的是越来越丰富了。

这个平台最牛B的功能,当属信号和槽(singnals/slots),使对象间的交互非常方便;不像微软自家的Windows SDK,多少年一直是那个样子,没有什么进展,什么声明窗口类、注册窗口类。。。等等,很复杂,让人看着就头疼。虽然有.NET平台,但作为纯技术流,在很多情况下还是需要本地代码开发:简单!高效!

笔者从12年开始接触以来,断断续续一直在关注,也算见证了它的一步步发展。从最初的Trolltech,到Nokia,在到Digia,东家一再变更,但不变的是开发者对它的热情。很多大公司的知名产品都基于QT开发。

我想QT发展最成功的原因还是它的一个开放的态度,但近几年不知怎么回事,微软都拥抱开源、拥抱Linux了,QT的东家却感觉有点作死。从QT5.15开始,不再提供二进制版本,官方只对商业许可用户提供二进制下载,需要开发者自己编译。

笔者也尝试编译了下,还是会遇到很多坑,这里记录一下,和大家分享一些经验。

编译平台:

Win7   FAIL

Win10  OK

Ubuntu20.02  OK

源码下载:

方法一:直接从qt的git仓库下载,慢
源码地址:https://code.qt.io/cgit/qt/qt5.git/refs/
方法二:https://www.qt.io/offline-installers 下载包含所有module的源代码包

需要工具(2021.9最新):

Perl 5.32

Python 3.9

CMake

Ninja

Mingw64

将以上工具的二进制(bin目录)加入到环境变量

set BASE=C:\qt

set CMAKE=%BASE%\tools\cmake
set NINJA=%BASE%\tools\ninja-win
set MINGW64=%BASE%\tools\mingw64

set PERL=%LOCALAPPDATA%\activestate\ed778b86
set PYTHON=%LOCALAPPDATA%\Programs\Python\Python39

set PATH=%PATH%;%CMAKE%\bin;%NINJA%;%PERL%\bin;%PYTHON%;%MINGW64%\bin
set QT6-BUILD=%BASE%\src\6.1.3\qt-build

编译:

rmdir /S /Q %QT6-BUILD%
mkdir %QT6-BUILD%
cd %QT6-BUILD%
..\configure.bat -release -no-pch -prefix %QT6-BUILD% -skip qtwebengine -skip qtwebview -skip qtdoc -make tools -nomake tests -nomake examples

cmake --build . --parallel

cmake --install .

生成物(10个文件夹):

bin,doc,include,lib,mkspecs,modules,phrasebooks,plugins,qml,translations

下一篇抽空出“通过源代码编译Qt Creator”

参考:
Official: Qt for Windows https://doc.qt.io/qt-6/windows.html
Official: Qt for Windows - Building from Source: https://doc.qt.io/qt-6/windows-building.html
https://code.qt.io/cgit/qt/qt5.git/refs/
https://decovar.dev/blog/2020/12/04/qt-without-installer/
http://www.saoe.net/blog/building-qt-6-1-0-on-windows-10-with-visual-studio-2019/
Linux:https://www.linuxfromscratch.org/blfs/view/svn/x/qt5.html
http://wiki.digitser.cn/en-US/qt/compile5.15.html
At last, let's build Qt statically | Declaration of VAR (retifrav.github.io)https://retifrav.github.io/blog/2018/02/17/build-qt-statically/
https://doc.qt.io/qt-5/build-sources.html
https://wiki.qt.io/Building_Qt_5_from_Git
https://doc.qt.io/qt-5/qdoc-guide-clang.html

Qt Creator:
https://download.qt.io/development_releases/prebuilt/libclang/
https://github.com/qt-creator/qt-creator/blob/master/README.md
https://wiki.qt.io/Building_Qt_Creator_from_Git
https://wiki.qt.io/MinGW-64-bit
https://wiki.qt.io/Building_Qt_Creator_from_Git#mw-head