你如何解决`cmake .. && make install`“没有进行目标安装的规则”?

Tre*_*ith 2 c++ installation makefile cmake

我试图用来cmake安装一些通过cmake.

我发现什么是 cmake 等价于 'configure --prefix=DIR && make all install '?这似乎很容易。看起来您只需要设置cmake变量CMAKE_INSTALL_PREFIX然后就make install可以工作了。

我发现cmake单独设置变量并没有解决问题make install,我不断收到错误消息“没有规则进行目标安装”。

您如何解决cmake .. && make install“无规则进行目标安装”?

pscmake版本是 2.8.x

Tre*_*ith 5

我查阅了我拥有的 Cmake 教科书(或者如果你去 [the cmaketutorial0( https://cmake.org/cmake-tutorial/ ))。根据教科书,除了设置cmake变量CMAKE_INSTALL_PREFIX,你也需要调用cmake函数install()任何你想通过生成的进行安装Makefile

因此,在我的情况下,我通过以下方式在 CMakeLists.txt 中设置变量:

set(CMAKE_INSTALL_PREFIX path/to/directory)
Run Code Online (Sandbox Code Playgroud)

然后在每个下add_library()add_executable()我补充说:

install(TARGETS name1
    DESTINATION ${CMAKE_INSTALL_PREFIX}
    )
Run Code Online (Sandbox Code Playgroud)

然后当我这样做时cmake .. && make && make install我成功了并且预期的文件安装在预期的目的地。