153得票3回答
如何在命令行中设置CMake的option()选项

我创建了一个包含以下内容的CMakeLists.txt文件project(P4V) cmake_minimum_required(VERSION 2.6) option(BUILD_STATIC_LIBS "Build the static library" ON) option(BUILD...

148得票2回答
CMake target_include_directories的作用范围含义

与CMake的target_include_directories相关的关键词PUBLIC,PRIVATE和INTERFACE的含义是什么?

144得票4回答
覆盖单个文件的编译标志

我希望为编译项目使用全局的标志集,这意味着在我的顶层CMakeLists.txt文件中,我已经指定了:ADD_DEFINITIONS ( -Wall -Weffc++ -pedantic -std=c++0x ) 然而,对于子目录中的特定文件(比如说“foo.cpp”),我想要切换编译标志,以...

143得票7回答
CMake:如何构建外部项目并包含它们的目标

我可以帮助您进行翻译。这段内容是关于一个名为"A项目"的工程,它将一个静态库作为目标进行导出。 install(TARGETS alib DESTINATION lib EXPORT project_a-targets) install(EXPORT project_a-targets DE...

142得票10回答
CMake无法确定C++的链接器语言

我正在尝试在Windows 7 x64上使用Visual Studio 2010和Cygwin运行一个cmake hello world程序,但似乎两者都无法正常工作。我的目录结构如下:HelloWorld -- CMakeLists.txt -- src/ -- -- CMakeLists....

141得票7回答
如何使用CMake将C++程序与Boost库链接

在Ubuntu下,将我的程序与Boost库链接的CMake文件应该是怎样的? 运行make时显示的错误信息:main.cpp:(.text+0x3b): undefined reference to `boost::program_options::options_description::...

141得票31回答
CMake无法找到Visual C++编译器

安装了Visual Studio 2015并在之前的项目上运行CMake后,CMake报错无法找到C编译器。The C compiler identification is unknown The CXX compiler identification is unknown CMake Err...

139得票4回答
C++项目组织(使用gtest、cmake和doxygen)

我对编程一般都是新手,所以我决定从制作一个简单的C++向量类开始。然而,我想从一开始就养成良好的习惯,而不是试图在以后修改我的工作流程。 目前我只有两个文件vector3.hpp和vector3.cpp。随着我对所有东西的熟悉度越来越高,这个项目将会逐渐扩大(使它更像一个通用的线性代数库),所...

139得票4回答
如何告诉CMake在源目录中链接静态库?

我有一个小项目,其中有一个Makefile,我试图将其转换为CMake,主要是为了获得使用CMake的经验。在本例中,该项目包含一个源文件(C++,尽管我认为语言并不特别相关)和一个静态库文件,我从其他地方复制了它。出于论证的目的,假定库的源代码不可用;我只有.a文件和相应的头文件。 我的手...

136得票3回答
最简单但完整的CMake示例

一些时候,我对CMake的工作原理完全感到困惑。每次我认为我已经接近理解CMake应该如何编写时,它都会在我阅读下一个示例时消失。我想知道的是,我应该如何构建我的项目,以便将来需要最少的维护。例如,当我在我的src树中添加一个新文件夹时,我不想更新我的CMakeList.txt,因为它与所有其...