2017-09-22 22 views
0

我正在嘗試構建鏗鏘聲,但是構建大小相當大。由於clang支持非C族語言(例如Java,Fortran),有沒有辦法在構建期間關閉它。我只想要支持C和C++,而不關心其他語言。只爲幾種語言構建鏗鏘聲前端(比如C和C++)

是否有一個CMake選項需要設置來做到這一點?

非常感謝!

最好的問候, 尼蒂什

+1

Clang不支持Fortran或Java。你不用gcc來混淆它嗎? – arrowd

回答

0

答案很簡單:鐺是C/C++前端,它不支持也不Java和Fortran語言,因此也就不存在這樣的選擇 - 沒有什麼可以關閉。

0

正如其他人評論說,鐺是C/C++前只有結束,而且也沒有Java/Fortran的前端禁用。

然而,還有其他的方法來減少鐺建築面積:

  • 選擇合適的構建配置

    爲LLVM /鐺默認的內部配置是Debug。構建Debug(不指定構建配置)的結果與巨大的可執行文件,生成文件夾可能需要> 20GB。這主要是由於調試信息。

    如果你不發展鐺,並且不需要調試信息,您可以建立MinSizeRel,這是對大小進行了優化的發佈版本。

  • 扭捏構建設置

    如果您打算調試鐺或做光鐺的研究與開發,另一種選擇是用最少的調試信息建築 - -gmlt選項保持線調試信息,僅允許源步進,並且與完整的調試信息(-g)相比,結果更加緊湊的目標文件。

  • 禁用構建組件

    您可以禁止從建築的一些組件,如測試和實施例:

    -DLLVM_INCLUDE_TESTS=Off -DLLVM_INCLUDE_EXAMPLES=Off

將其組合在一起:

cmake -DCMAKE_BUILD_TYPE=MinSizeRel -DLLVM_INCLUDE_TESTS=Off -DLLVM_INCLUDE_EXAMPLES=Off

對於緊湊型調試版本:

cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_CXX_FLAGS=-gmlt -DLLVM_INCLUDE_TESTS=Off -DLLVM_INCLUDE_EXAMPLES=Off

希望這有助於!