标题:LLVM完整版(编译QDoc需要)
作者:chaome
日期:2019-07-16 10:36
内容:
在新版本的Qt编译时候,提示需要LLVM,然而官方提供的LLVM下载是不完整的,没有包含Qt需要的全部文件。
以下是我自行编译的LLVM程序包,大家可以下载之后直接使用。
链接:https://pan.baidu.com/s/1aLxHfePHJn6ec5fLv9HbNQ 提取码:qxiz
大家可以去里面找LLVM的文件夹。
使用方法:
1、将它下载之后,解压到本地目录。
2、在执行Qt的configure之前,需要先执行以下命令:
set LLVM_INSTALL_DIR=目录(目录是bin、include、lib的上级)。
比如我的设置是:set LLVM_INSTALL_DIR=D:\Backup\llvm\Compiled\8.0\LLVM
其实自己编译也很简单的,这是官方的编译帮助:
https://llvm.org/docs/CMake.html
#1 [fsu0413 07-17 15:39]
官方源码编译出来的llvm没有libclang_static.lib,导致QDoc只能编译动态的,我看Qt公司自己编译的QDoc都是静态的,不知道怎么编的。
#2 回 fsu0413 的帖子 [lixinwei 10-06 16:23]
fsu0413:官方源码编译出来的llvm没有libclang_static.lib,导致QDoc只能编译动态的,我看Qt公司自己编译的QDoc都是静态的,不知道怎么编的。 (2019-07-17 15:39)
https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_60-windows-vs2015_32.7z
https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_60-windows-vs2015_64.7z
https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_60-windows-mingw_32.7z
https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_60-windows-mingw_64.7z
这应该就是Qt官方使用的libclang,里面有libclang_static.lib
编译之前需要set QDOC_USE_STATIC_LIBCLANG=1
经测试,使用上面第一个(libclang-release_60-windows-vs2015_32.7z),VS2019,x86,编译Qt5.15.1,可以编译,编译出来的qdoc.exe大小与Qt官方的差不多(41M多)
#3 回 lixinwei 的帖子 [fsu0413 10-07 07:00]
lixinwei:https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_60-windows-vs2015_32.7z
https://download.qt.io/development_releases/prebuilt/libclang/qt/libclang-release_60-windows-vs2015_64.7z
https://download.qt.io/development_releases/pre .. (2020-10-06 16:23)
非常感谢,不过我需要的不是编译的成果物,而是编译方法。。。。。。
#4 回 fsu0413 的帖子 [lixinwei 10-07 14:24]
fsu0413:非常感谢,不过我需要的不是编译的成果物,而是编译方法。。。。。。
(2020-10-07 07:00)
Qt源码/coin/provisioning/common/windows/libclang.ps1里面有注释:
This is a hacked static build of libclang which requires special handling on the qdoc side.
应该是用很特殊的方法编译的
我也是看了这个文件才知道Qt官方用的libclang是哪里下载的
#5 回 lixinwei 的帖子 [fsu0413 10-20 20:38]
lixinwei:Qt源码/coin/provisioning/common/windows/libclang.ps1里面有注释:
This is a hacked static build of libclang which requires special handling on the qdoc side.
应该是用很特殊的方法编译的
....... (2020-10-07 14:24)
我就是想知道这个特殊的方法是啥。。。。
既然没有说明,我如果想编译出和这个一摸一样的就得自己调查。。。。。。。。。