我的项目使用CMake作为其构建系统,我希望它执行我的Boost.Test测试用例。我怎样才能做到这一点?在Boost.Build中,我可以这样做:importtesting;use-project/my_lib:../src;unit-testmy_test:my_test.cpp/my_libboost_unit_test_framework;libboost_unit_test_framework; 最佳答案 CMake本身只是一个构建系统;CTest是一个与CMake集成的公正测试运行器。单元测试框架也不是。这项工作可以由B
我正在尝试在VisualStudio10中为esys-particle-win运行cmake。我的cmake路径:C:\ProgramFiles(x86)\CMake2.8\bin\cmake.exe我的esys-particle-win路径:C:\esys-particle-win\trunk\buildvs2010\mkvs10.bat我在VisualStudio2010的管理员命令提示符中输入的命令是:cdc:\esys-particle-win\trunk\buildvs2010mkvs10.bat我收到了这个错误:'cmake'isnotrecognizedasaninter
如何在不使用CmakeGUI的情况下更改当前的cmake生成器(我想将标准生成器更改为VisualStudio122013Win64)? 最佳答案 对于那些寻求CMakeGUI答案的人。使用GUI菜单转到文件->删除缓存,然后再次单击配置。需要更改生成器的一种情况是,您保持CMakeGUI处于打开状态并重复使用同一目录(源代码和CMakeList.txt)来执行简单的示例或教程,并在重新开始之前删除构建文件,例如对于源外构建,它将是整个构建目录。这不是CMake的标准用例,但在初学者中很常见。
我有一个纯C++11DLL(没有任何类型的依赖项)我已经能够在Linux和Windows上编译一段时间了,现在使用CMake生成项目文件和make/MSVC在每个各自的本地编译系统。我现在想在OSX上编译,我在让CMake在XCode中设置正确的项目设置以编译DLL时遇到了很多问题。软件版本:XCodev5.0CMakev2.8.12相关CMake脚本代码:#SetoutputdirectoryifAppleOSX:IF(${CMAKE_SYSTEM_NAME}MATCHES"Darwin")message("CMAKEHASDETECTEDAOSXSYSTEM-BUILDINGFOR
问题:CMake能否生成不使用CMake的构建脚本?如果不是,那么将CMake生成的automake脚本消化为不对CMake进行任何检查有多难?我是CMake的忠实粉丝,以至于我支持在我目前的工作环境中过渡到CMake的想法。如果我能证明CMake可以生成不需要cmake本身的automake文件,那么可以简化从我们当前的构建系统到CMake的过渡的一件事。显然,我永远不想在日常使用中这样做,但是能够轻松创建可以从源代码构建而无需cmake的代码分支,这将大大有助于我提出自己的观点. 最佳答案 执行此操作的能力取决于您的操作系统,我
我正在尝试使用CLion创建一个SDL2项目。问题是使用#include时找不到SDL头。我的CMakeLists.txt文件:cmake_minimum_required(VERSION2.8.4)project(ChickenShooter)set(SDL2_INCLUDE_DIRC:/SDL/SDL2-2.0.3/include)set(SDL2_LIBRARYC:/SDL/SDL2-2.0.3/lib/x64)include_directories(${SDL2_INCLUDE_DIR})set(SOURCE_FILESmain.cpp)add_executable(Chick
基本上我想实现这个工作流程:从Windows系统(或任何平台)上的存储库中checkout。运行一些获取依赖项的工具,包括和库,并将它们放在适当的位置(如Windows上的“\ProgramFiles\MicrosoftVisualStudio10.0\VC\Liband\Includes”)运行CMake(在win上创建MSVS项目)打开MSVS项目并编译。我希望在大多数平台上都有这个工作流程。我不想手动下载依赖项如何在不将依赖项存储在存储库中的情况下做到这一点?实现这一目标的最佳方法是什么? 最佳答案 在CMake中,您可以使用
我基本上希望达到与http://blog.alexrp.com/2013/09/26/clangs-static-analyzer-and-automake相同的效果,但使用CMake。analyze_srcs=foo.canalyze_plists=$(analyze_srcs:%.c=%.plist)CLEANFILES=$(analyze_plists)$(analyze_plists):%.plist:%.c@echo"CCSA"$@@$(COMPILE)--analyze$这样你就可以运行了makeanalyzemakeclean我想我需要使用add_custom_comma
我通过使用ninja构建来运行单元测试,然后从我的构建树中运行ninjatest:cmake-GNinja/source/treeninjaninjatest但是,要运行valgrind,我需要手动运行它:valgrindrel/path/to/test我希望valgrind在我运行ninjatest时自动运行。Accordingtothecmakedocumentation“设置[valgrind测试]非常简单”,但是当我运行时ctest-DNightlyMemoryCheck我只是得到这个错误:Cannotfindfile:/home/arman/tinman/deb/DartCo
我添加了AddressSanitizer标志如下:set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS}-fsanitize=address")使用UnixMakefiles时,一切都可以正常构建和运行。生成Xcode项目时出现问题,它只是不想链接,因为它找不到ASan库。我已经找到了两个解决方案,但决定不使用它们,因为仅使用CMake无法实现自动化:将-Wl,-undefined,dynamic_lookup添加到链接标志中,因此它会跳过链接到动态库。直接与libclang_rt.asan_osx_dynamic.dylib链接。那么这两种方案有什么问题呢?使用