草庐IT

cmake-custom-command

全部标签

c++ - 如何告诉 CMAKE 下载一些必要的头文件(更准确地说是 GLM 数学库)而不尝试编译它们?

我正在建立一个使用大量ExternalProjects的CMAKE项目。要构建其中之一(CEGUI),我需要下载GLM(OpenGL数学库)。此库是仅包含库,这意味着您不能编译它。有一些可以编译的测试,但在我的项目中不需要它们(此外,其中一个没有正确编译并破坏了编译链)。我想要的是找到一种方法告诉CMAKE只下载项目(GIT更新等),就像通常使用ExternalProject_add()函数一样,但不要尝试编译它(这会产生fatalerror),并安装INCLUDE文件(确实是库)。CMAKE中是否有下载头文件并安装功能?GLMheader-library是否有人遇到过这个问题?

c++ - 使用 cmake 构建库

很抱歉打扰了大家,但是我在使用cmake时遇到了一点编译问题。我有一个用于构建测试可执行文件的CMakeLists.txt文件和一个共享库。它们都依赖于另一个库(SFML)。我在带有MinGW的窗口上使用cmake。我知道我正在构建的库的名称与sfml有点混淆,但它应该是一个SFML包装器,所以,我没有找到更好的名称!这里是CMakeLists.txtcmake_minimum_required(VERSION2.6)project(projectName)set(EXECUTABLE_NAMEtestSFML)set(LIBRARY_NAMESFMLwindow)set(EXECUT

c++ - cmake:设置多个项目和它们之间的依赖关系

我需要帮助为C++项目编写一个好的CMakeLists.txt。我寻找答案,但我找到了任何东西。这是我的项目结构:MainProj|ProjLib/||include/|||proj_lib.h||src/|||proj_lib.cc||CMakeLists.txt|ProjExec/||include/|||proj_exec.h||src/|||proj_exec.cc||CMakeLists.txt|CMakeLists.txtMainProjCMakeLists.txtcmake_minimum_required(VERSION2.8)project(MainProjCXX)#

c++ - Qt Cmake 配置没有 C++ 编译器集的路径

我收到的警告是:“QtCmake配置没有指向C++编译器集的路径,即使该工具包具有有效的工具链也是如此。”我不确定如何更改CMake配置以使其具有编译器路径。我确实安装了一个C++编译器,因为它可以与VS一起使用,但Qt似乎遇到了一些问题。这是显示为警告的屏幕截图:/image/ETET6.jpg这是我尝试运行任何东西时遇到的错误:jom:C:\Users\User\Desktop\inv\build-Invaders-Desktop_Qt_5_8_0_MSVC2015_64bit-Debug\Makefile.Debug[debug\game.obj]Error1'cl'isnotr

c++ - cmake + xcode : error 'Build setting PRODUCT_NAME undefined'

我正在使用cmake2.8.3为xcode3.2.5生成一个C/C++项目文件;构建总体上很好,但每次生成xcode项目时我都必须手动设置“产品名称”(在Project/EditProjectSettings/Packaging中)。如果我未能设置此产品名称,xcode拒绝构建项目,并退出并报告以下错误:build设置PRODUCT_NAME未定义是否可以使用cmake设置这个值?还是不定义产品名称? 最佳答案 你试过这样的事情吗?set_target_properties(your_targetPROPERTIESXCODE_AT

c++ - CMake: "make depend"的用途是什么?

cmake生成的目标之一是depend:ThefollowingaresomeofthevalidtargetsforthisMakefile:...all(thedefaultifnotargetisprovided)...clean...depend...edit_cache...rebuild_cache执行“makedepend”会有什么影响? 最佳答案 这构建了Makefile的某些目标的依赖关系规则。参见http://en.wikipedia.org/wiki/Makedepend

c++ - 针对 dll/lib 的 cmake 链接

我的cmake的输出是一个静态库。我正在这样创建它:add_library(myMainLibSTATIC${BACKEND_SOURCES})当我尝试让myMainLib链接到第三方库/dll时出现问题。dll文件将在运行时找到,但是,我试图导入/链接lib文件,但没有成功。我的第三方库是SDL2和SDL2NET。我认为这很简单,并且已经用尽了我在网上找到的所有方法。都失败了。下面是我尝试过的列表。请告诉我我做错了什么。简单的方法,使用target_link_librariesadd_library(myMainLibSTATIC${BACKEND_SOURCES})target_l

c++ - CMake:从 ExternalProject 链接共享 C++ 对象生成具有相对路径而非绝对路径的二进制文件

问题:我正在CMake中构建一个外部项目。该项目有一个最终生成共享对象的Makefile。我想在我的super项目中链接并安装这个对象,就像它是项目中的库之一一样。问题是ExternalProjectlib使用相对路径而不是绝对路径链接到我的应用程序和库中,这会在从CMake放置它的位置之外的任何目录运行时导致问题。我有createdasampleSSCCEexampleproject展示我的整体设置。如果需要,请随意阅读和编译(gitclonehttps://github.com/calebwherry/cmake-SO-question-main--recursive&&cdcma

c++ - 在 emacs 中使用 EDE 处理 cmake/C++ 项目

我想使用EDE(来自CEDET)来处理我的一些基于cmake的C++项目。我发现了一些信息,这应该是可能的。但是,从现有源文件和cmake文件创建新项目的最佳方式是什么? 最佳答案 基于CMake的项目还不受本地支持——我个人使用标准的ede-cpp-root项目类型+somecustomcommandstocompilecode.在这个方向上有一些关于更完整功能的工作。您可以在separaterepository中找到更改. 关于c++-在emacs中使用EDE处理cmake/C++项

c++ - 在命令行或从 CMake 指定用于 Visual Studio 代码分析的规则集

我正在尝试为我的CMake驱动项目启用代码分析。我生成VisualStudio2013解决方案,并希望使用特定规则集启用代码分析。我知道我可以通过在我的CMake文件中指定add_definitions("/analyze")来启用代码分析,但是我如何控制使用哪个规则集?据我所知,控制所用规则集的唯一方法是通过项目文件中的xml元素CodeAnalysisRuleSet,但我无法从CMake访问它。 最佳答案 如果您尝试通过命令行构建解决此问题——通过cmake--build或直接调用msbuild——而不是在使用生成的使用Visu