我是使用 cmake 构建软件的新手。
我想使用 cmake 安装 VTK。我下载了 .tar 文件并解压了它。这给我留下了一个包含一些 cmake 文件和其他一些东西的目录。
假设我已经对目录中的所有文件进行了去皮/HOME/USER/SETUP_FILES/
并创建了一个目录/HOME/USER/SETUP_FILES/BUILD
当我进入/HOME/USER/SETUP_FILES/BUILD
并执行时cmake ../.
,我可以配置构建。
在配置文件中,我可以选择定义CMAKE_INSTALL_PREFIX
我的第一个问题是:
1)我应该在那里输入什么?
例如,当我输入时,/HOME/USER/VTK_PROGRAM
会创建此文件夹(在make
和 之后make install
),其中包含一个bin/
文件夹(以及一些其他文件夹)。
但是,其中/HOME/USER/SETUP_FILES/BUILD
还bin/
创建了一个文件夹。
我的第二个问题是:
2)我现在有三个包含文件的文件夹。为了拥有一个有效的程序,我应该保留哪些(哪些):
a) /HOME/USER/SETUP_FILES
b) /HOME/USER/SETUP_FILES/BUILD
c)/HOME/USER/VTK_PROGRAM
是否可以合并 b) 和 c) 文件夹?
答案1
如果使用(或等效项)结束安装make install
,则仅需要最后一个。这个想法是构建目录包含构建过程中创建的所有文件(包括链接库和二进制文件的目标文件)。您所在的目录安装该应用程序仅包含其运行所需的内容。然而,这不一定是构建目录的子集 - 它可能包含一些数据文件,这些数据文件包含在源 tarball 中,但不一定复制到构建目录中(尽管可能是)。
一般来说,最终安装到目标目录中的内容通常是常规分发包中打包的内容。
答案2
要使用 cmake 定义变量,您需要
cmake -DCMAKE_INSTALL_PREFIX=/opt/XX ..
(..
是您找到 CMakeList.txt 的位置)