CLion 和 CMake:只构建一个没有可执行文件的库?

CLion and CMake: only building a library without an executable?

如何在没有可执行文件的情况下仅使用 clion 构建静态库? CMakeLists.txt 看起来怎么样? (没有 add_executable

更新:如果我不向 Clion 添加可执行文件,我有一个 error,需要可执行文件。

这是我的 CMakeLists.txt.

这是一个老问题。但我会将您的问题的答案添加到其他人的帮助中。您需要将 add_executable 替换为 add_library

add_library(target_name source_files)

简短回答:编译库目标和运行任何自定义命令作为占位符以避免警告。

长答案:

CLion 允许您构建整个项目和 运行 executables/configurations。

当运行编译可执行文件时,您可以选择编译目标,编译目标后可执行文件运行。对于可执行目标,它们通常是同一件事。您编译可执行目标,然后 运行 它。

这似乎并不是真正为图书馆设计的,但有一个解决方法。您通常将目标设置为库,将可执行文件设置为依赖于该库的任何可执行文件。然而,这通常不是很有用,因为如果你想 运行 这个可执行文件,你可以只将这个可执行文件设置为目标,并且无论如何都会构建库。

所以人们可能只想构建库(检查是否一切正常等)而不编译或 运行ning 任何额外的可执行目标。在这种情况下,解决方法是在构建库后选择自定义可执行文件 运行,错误消息消失。

构建库后运行没有任何有用的东西,只需选择任何廉价命令作为占位符即可。类似“pwd”或“ls”的东西。