用CMake生成LLD VS 2019工程受虐记-1

用CMake生成LLD VS 2019工程受虐记-1


今天尝试有CMake在LLVM上生成LLD的VC++工程,被虐了一整天。

先缩写关键操作:
最终确定下来在第一次调用Cmake后,并不会生成需要的lld executable。需要在这之前先手动修改llvm的CMakeLists.txt,把
option(LLVM_ENABLE_LLD “Use lld as C and C++ linker.” OFF)
改为
option(LLVM_ENABLE_LLD “Use lld as C and C++ linker.” ON)
再CMake。
然后会生成CMakeCache.txt。这里就会多出几个变量来,要把和LLD有关的都配置好,二度执行cmake,即可生成lld的工程。


以下是完整的受虐记录。

首先是看到http://lld.llvm.org/windows_support.html上对于building LLD的介绍,无比地清爽容易

Using Visual Studio IDE/MSBuild
Check out LLVM and LLD from the LLVM SVN repository (or Git mirror),
run cmake -G “Visual Studio 12” from VS command prompt,
open LLVM.sln with Visual Studio, and
build lld target in lld executables folder
Alternatively, you can use msbuild if you don’t like to work in an IDE:

msbuild LLVM.sln /m /target:“lld executables\lld”

寥寥几步,多容易!
然而后面的事实证明我是太傻太天真了,这只是一整天被虐的开始……

首先llvm的源码树异常地大,从github克隆很久,后来从gitee上克隆下来了。
接着就是照着步骤做。开始因为不懂cmake,没有创建一个叫"build"的目录,直接在/llvm 下 cmake -G了,却仍然配置成功。
但赫然发现并没有lld executables这个"folder"
后来发现LLVM官网上的预生成binaries里,最高版本没有windows下的,只有10.0.0里有,怀疑是不是版本太高不支持,于是在Fork软件里 discard了生成的东西,git checkout了10.0.0。这次创建了build目录,再在build目录里试图cmake。
然而,这次cmake就不再成功了!
接下来又checkout了9.0.0, 8.0.0, 9.0.1等多个版本,也换用了VS的command prompt和直接打开命令提示窗口,无一成功!
全部提示找不到pthread.h后就"Incomplete"后退出了,CMake的error文件里到处都是找不到各种头文件,也不知是哪个的问题。
后来在CSD

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值