在windows上構建LLVM 7.0.1
關於在windows上構建LLVM,網上有不少文章,但都是互相抄來的,寫作時極不認真,不是少這個,就是少那個,沒有一篇是可以完整照著做下來的,實在氣人。
本文的安裝和配置過程,我親自操作過好幾遍,不惜為此重裝操作系統,相信大家只要按照步驟嚴格操作,一般不會出意外的。
整個過程預計耗時4~5小時,具體取決於網速和機器配置,請大家在操作之前做好心裏準備。
我的操作系統是Win7x64,計劃以x64為目標平臺來構建。
準備清單:
1、Visual Studio 2017 Community
2、LLVM-7.0.1-win64 src
【LLVM】http://releases.llvm.org/7.0.1/llvm-7.0.1.src.tar.xz
【Compiler-rt】http://releases.llvm.org/7.0.1/compiler-rt-7.0.1.src.tar.xz
3、CMake-3.14.0 x64
4、python-3.7.1-amd64
5、strawberry-perl-5.28.1.1-64bit
6、GetGnuWin32-0.6.3
準備上述資源時,請務必保證版本號不低於上述所列要求,最好和我的保持一致。
安裝步驟:
1、安裝CMake,安裝時註意勾選:把bin路徑加入PATH
2、安裝python,安裝時註意勾選:把bin路徑加入PATH
如果忘了加入PATH,後面CMake配置VS工程會失敗。
3、安裝strawberry-perl,這也是CMake依賴的,它在安裝後會自動加入PATH。
4、安裝GetGnuWin32,把bin路徑加入PATH
進入bin目錄,執行download.bat,下載所有組件,耗時很長,慢慢等待。
一定要等所有組件全部下載完,否則,後面CMake配置VS工程會失敗。
5、安裝VS2017,把C++桌面開發和通用桌面開發,都勾選上,裏面有C++編譯器和CMake相關工具。
6、解壓縮源代碼:
解壓縮llvm-7.0.1.src.tar.xz,調整目錄為 E:/llvm
解壓縮cfe-7.0.1.src.tar.xz,調整目錄為E:/llvm/tools/clang
解壓縮compiler-rt-7.0.1.src.tar.xz,調整目錄為E:/llvm/projects/clang
7、運行VS2017的x64 本機工具命令行程序,執行以下命令來生成VS解決方案:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community> e: E:\> cd llvm E:\llvm> mkdir build E:\llvm\build> cd build E:\llvm\build> cmake -G "Visual Studio 15 Win64" e:/llvm
註意,Visual Studio 15表示VS2017,Win64表示目標平臺是x64。
如果是64位平臺,請務必選Win64,否則編譯出的程序無法運行!
順便說一句,網上幾乎所有文章都會告訴你用 -Thost=x64來設置目標x64平臺,實際操作下來,根本無效!請嚴格按照我這裏的操作。
CMake生成過程中,肯定會出現很多looking for xxx - not found的提示,沒關系,不影響構建。
如果構建順利,最後會顯示如下結果:
-- Configuring done
-- Generating done
-- Build files have been written to: E:/llvm/build
8、打開VS2017,打開解決方案 E:/llvm/build/LLVM.sln
找到CMakePredefinedTargets目錄下的ALL_BUILD工程,開始構建,耗時非常非常長,耐心等待!
構建完成後,輸出的bin和lib在以下位置:E:/llvm/build/Release
最後祝大家操作順利!
在windows上構建LLVM 7.0.1