草庐IT

CMAKE_C_COMPILER

全部标签

c++ - 与 friend 一起上课而不是前向声明,: which compiler is correct

这个问题在这里已经有了答案:Friendmethod"notdeclaredinthisscope"inC++(1个回答)Error:'FriendMemberFunctionName'wasnotdeclaredinthisscope(3个答案)关闭3年前。我有这个简单的C++程序:#includestructobj{friendintf(int);voidm(intx){std::cout如果我使用GNUC++编译器g++进行编译,我会得到错误prog.cpp:7:55:error:'f'wasnotdeclaredinthisscope但是,如果我使用cl(和/W4)编译它,它会

c++ - CMake,选择Xcode编译器

我知道直到最近还无法为CMake生成的xcode项目选择任何特定的编译器(它总是选择xcodes默认编译器)。无论如何这篇文章:http://cmake.3232098.n2.nabble.com/CMake-2-8-1-available-for-download-td4752230.html让我相信现在应该可以使用特定的CMAKE_XCODE_ATTRIBUTE_标志。-不幸的是,我既找不到应该更改xcodes编译器的标志,也找不到CMake支持的所有xcode标志的列表。我正在使用Xcode4.2和CMake2.8.6,我希望能够在CMake中在LLVM3.0和LLVMGCC4.

c++ - 将已编译的 .res 文件与 CMake 链接

我正在尝试将已编译的.res文件与cmake链接,但我似乎无法找到有关如何执行此操作的太多信息。我得到的最接近的是SET(RESOURCE_FILEresource.res)file(GLOBsrc_files"src/*.h""src/*.cpp""${RESOURCE_FILE}")add_executable(exename${src_files})然后通过IDE手动链接.res文件(即在visualstudio中将.res文件放入链接器附加依赖项中)。这意味着我每次更改cmake文件时都必须重置附加依赖项。当然有比这更好的方法请原谅我对cmake的经验不足,我们将不胜感激。

c++ - 在 CMake 中查找目录

问题:我想添加boostnumericbindings作为我构建中的包含目录。这通常编译为:c++-I/where/you/want/to/install/it/include/boost-numeric-bindings我从我的程序中引用的所有头文件都是相对于这个目录的,所以在CMake中我想找到这个目录(无论它安装在父系统上的什么地方)并将它添加到include_directories.我在找什么:像这样:find_directory(BNB_INCLUDE_DIRboost-numeric-bindings)include_directories(${BNB_INCLUDE_DI

c++ - 安装 VS2010 后,如何使用 CMAKE for Windows-SDK 编译器?

我目前正在使用SWIG开发一个Python2.7前端对于CMAKE配置的C++项目(不是我自己开发的,我只是为这个项目启动了CMAKE)。该项目使用FIND_PACKAGEforpython和swig在VS2010下编译(并运行)良好。但是,python2.7(和其他版本)是使用VS2008编译器编译的,它与VS2010不兼容。我已经安装了WindowsSDK7编译器,我可以使用distutils编译另一个SWIG项目(没有CMAKE)。尝试使用CMAKEforVisualStudio2008配置实际项目失败:xxx>cmake.-G"VisualStudio92008"CMakeEr

c++ - CMake:GLFW 作为外部项目

问题我正在尝试创建一个使用GLFW的项目.对于这个项目,我使用CMake作为构建系统。我想这样做,以便用户只需使用CMake构建我的项目,并且作为该过程的一部分,GLFW将得到构建和适当链接。为此,我将GLFW作为ExternalProject添加到我的CMake文件中:EXTERNALPROJECT_ADD(glfwGIT_REPOSITORYhttps://github.com/glfw/glfw.gitGIT_TAG3.1INSTALL_DIR"${PROJECT_BINARY_DIR}/libs/glfw")但是,当我生成项目(对于VS122013x64)并运行ALL_BUIL

c++ - 链接到共享库的 Cmake 找不到库

在Ubuntu上,我有两个目录:build和src。在src中,我的CMakeLists.txt文件包含以下行:add_executable(Testmain.cpp)target_link_libraries(TestlibCamera.so)在构建目录(cmake../src)中运行cmake后,我将库文件libCamera.so复制到构建目录中。运行make后,main.cpp.o文件编译成功,但在链接期间收到以下错误:/usr/bin/ld:cannotfind-lCamera这是为什么?共享库与我正在构建的目录位于同一目录中...如果我将库复制到/usr/bin...也会发生

c++ - Cmake:将子项目目标导出到主项目

我目前有一个名为LIBS的项目,其结构如下:├──Lib1│├──CMakeLists.txt│├──lib1-class.cpp│└──lib1-class.h├──lib2│└──CMakeLists.txt│├──lib2-class.cpp│├──lib2-class.h├──cmake│└──LIBSConfig.cmake.in├──CMakeLists.txt在主cmake文件中,我有:install(TARGETSlib1lib2DESTINATION${PROJECT_DIRNAME_lib}EXPORT${PROJECT_NAME}Exports)install(E

c++ - CMake + 查找包或 checkout 并安装

我刚切换到CMake。但发现它非常有用并实现了一些简单的应用程序和库。我在某处读到可以在cmake脚本中查询git以checkout存储库。我想用我的Find(package).cmake检查包是否存在如果它不存在,我想启动checkout并将新目录作为子目录添加到cmake脚本中。这样我所有的依赖项都会自动安装。有人知道如何实现这个想法吗?谢谢!再见,亚瑟 最佳答案 您可能正在考虑在CMake2.8中添加的ExternalProject模块。它记录在http://www.cmake.org/cmake/help/cmake-2-8

c++ - 如何在将 CMake 用于 LLVM 时启用共享库构建?

问题:Ubuntu10.10不提供LLVMCMake模块(/usr/share/llvm)或(/usr/local/share/llvm)从Ubuntu存储库安装LLVM2.8时。所以我现在自己使用CMake编译LLVM2.8,然后像这样安装它:cmake..makemakeinstall这将安装我需要将LLVM链接到我的库中的CMake模块。问题是当我使用CMake编译LLVM时,只编译了静态库。我在LLVM文档中看到,您可以使用此参数将共享库编译到CMake中:cmake-DBUILD_SHARED_LIBS=true..但是现在,CMake返回了这个错误:--Targettrip