构建LLVM时了解CMAKE_INSTALL_PREFIX

时间:2016-03-22 23:49:46

标签: macos cmake llvm

我正在关注此guide以构建LLVM,并希望确认我对此构建选项的理解。我目前的资源来源是:

$HOME
|--Documents
|--...
|--Projects
|  |--llvm
|  |  |--source
|  |  |  |--#llvm source code
|  |  |--build
|  |  |  |--Release
|  |  |  |  |--performing cmake -G Ninja from this directory

现在我的问题是,对于$prefix变量,该路径是~/Projects/llvm/build/Release吗?哪个会将它安装到llvm的工作源而不是OSX原生的安装?

1 个答案:

答案 0 :(得分:0)

目录build/Release累积在 build 阶段创建的文件(当您执行ninja时)。

安装阶段(ninja install),其中一些文件将被复制到由<{1}}变量确定的最终位置中。复制文件本身就足以用于项目(在你的情况下是LLVM)工作;因此,如果您想释放空间,可以安全地删除 source build 树中的文件。

通常,CMAKE_INSTALL_PREFIX确定已安装文件的根目录,因此所有文件都将安装在给定目录下。此目录在指南中作为CMAKE_INSTALL_PREFIX进一步提及。

最好不要使用LLVM_DIR的build目录及其子目录,因为这可能会导致在 install 期间复制重叠文件。在你的情况下,CMAKE_INSTALL_PREFIX非常适合作为安装前缀。