草庐IT

CMAKE_C_COMPILER

全部标签

c++ - KDevelop with CMake 项目 - 如何管理调试和发布版本?

KDevelop是否支持在CMake项目的调试和发布版本之间切换? 最佳答案 当然,单击打开配置,然后单击窗口顶部的+。这将允许您添加另一个构建目录,并且您将能够在它们之间切换。 关于c++-KDevelopwithCMake项目-如何管理调试和发布版本?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/15064715/

windows - CMake 将 unix 转换为 windows 路径

我正在尝试转换一个unix风格的MSYS路径,例如/c/my/path/to/a/folder到Windows路径,或CMake可以理解的路径,例如C:/my/path/to/a/folder。我希望它在已经正确的路径上工作。有什么好的方法吗?注意:请不要提及cygwin的cygpath。编辑:file(TO_CMAKE_PATHmypathresult)不工作 最佳答案 没有针对此的内置CMake功能,但您可以编写函数/宏来执行此操作:macro(msys_to_cmake_pathMsysPathResultingPath)st

c - cmake 中 gcc 的 -mwindows 选项的等效项是什么?

我正在关注教程:http://zetcode.com/tutorials/gtktutorial/firstprograms/它可以工作,但每次我双击可执行文件时,都会出现一个我不希望它出现的控制台。我如何摆脱那个控制台?我试过这个:add_executable(CmdWIN32cmd.c)但是出现了这个fatalerror:MSVCRTD.lib(crtexew.obj):errorLNK2019:unresolvedexternalsymbol_WinMain@16referencedinfunction___tmainCRTStartupCmd.exe:fatalerrorLNK

visual studio 编译cmake项目

当编译出现问题message(FATAL_ERROR"TheCcompiler\n \"${CMAKE_C_COMPILER}\"\n"   "isnotabletocompileasimpletestprogram.\nItfails"   "withthefollowingoutput:\n ${_output}\n\n"   "CMakewillnotbeabletocorrectlygeneratethisproject.")控制台提示如下:1>已为默认配置“x64-Debug”启动CMake生成。1>发现和使用vcpkg工具链文件(C:/Users/dell/Downloads/vc

ios - 如何让 Cmake 在最终编译阶段而不是检测阶段使用特定的编译器和标志?

我正在尝试从MacOSX交叉编译到iOS。使用clang将源代码交叉编译为iOS目标很容易。我们只需要3个参数就可以让它工作。clang-archarmv6-isysroot/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk-miphoneos-version-min=4.3但问题是我必须构建一个用Cmake打包的库(BulletPhysics)。据我所知,Cmake还没有iOS支持。所以,我制作了一个工具链文件。SET(CMAKE_SYSTEM_NAME"Generic")SET(CMAKE_SY

compiler-construction - Go1 编译器是如何工作的?

我已经为一个学校项目涉足Go大约一个月了,我注意到src/pkg/go文件夹中的go/ast、go/token、go/parser等包。然而,gc编译器基于位于src/cmd/gc中的C文件。我的问题是关于Go1中用于构建和运行程序的新go命令:该工具是否依赖于我在上面引用的包?即,如果我向/go/token/token.go添加了一个新的token,它会被新的go编译器识别吗? 最佳答案 Go编译器是纯C语言编写的,不使用go/下的包。在Go源代码树中,它的词法分析器位于src/cmd/gc/lex.c,而它的Bison语法是sr

c++ - 如何使 CMake 输出到 'bin' 目录?

我目前正在构建一个带有插件结构的项目。我正在使用CMake编译项目。插件在单独的目录中编译。我的问题是CMake将二进制文件和插件、动态库编译并保存在源代码的目录结构中。如何让CMake将文件保存在./bin目录之类的目录中? 最佳答案 正如Oleg的回答,我相信要设置的正确变量是CMAKE_RUNTIME_OUTPUT_DIRECTORY.我们在根CMakeLists.txt中使用以下内容:set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY${CMAKE_BINARY_DIR}/lib)set(CMAKE_LIB

Ruby 和 SWIG 与 CMake

有没有人幸运地使用CMake通过SWIG创建Ruby绑定(bind)?我有一个在我的CMake文件中通过SWIG创建Python绑定(bind)的工作示例,但是当我使用相同的方法创建Ruby绑定(bind)时,实际的Ruby文件不会被创建。使用有效的Python绑定(bind),确实会创建一个Python文件。这是我的CMakeLists.txt文件的相关部分:if(${SWIG_FOUND})find_package(RubyREQUIRED)include_directories(${RUBY_INCLUDE_DIRS})include(${SWIG_USE_FILE})set(C

VS2019+cmake 方式添加ffmpeg库文件,cmake添加lib文件dll文件,包含目录示例

cmake_minimum_required(VERSION3.10)project(${PROJECT_NAME}CXX)set(CMAKE_CXX_STANDARD17)set(CMAKE_CXX_STANDARD_REQUIREDon)project(wfdb_demo)#设置ffmpeg路径,也可以是其他任意开发库的路径set(ffmpeg501"D:/work/ffmpeg-5.0.1-full_build-shared/ffmpeg-5.0.1-full_build-shared")#设置ffmpeg包含目录和lib路径 include_directories(${ffmpeg50

将 C 代码与 CUDA 链接时出现 CMake 错误

我在使用cmake构建项目时遇到链接错误。该构建在使用makefile(手动生成/无cmake)的Linux上运行良好,但Windows构建给我带来了问题。这是一个演示我的方法的准系统示例:我在同一目录中有3个文件(kernel.cu、kernel.h、main.c)主.c:externvoidkernel_wrapper();intmain(){kernel_wrapper();}内核.h:#ifndefKERNELH#defineKERNELHextern"C"voidkernel_wrapper();#endif内核.cu:#include#include"kernel.h"__