草庐IT

vs-cmake-examples

全部标签

c++ - 防止 CMake 查找已安装的库而不是 "local"库

我同时从事多个项目(一些库,以及一些依赖于它们的游戏)。它们都在GitHub上,在单独的repo协议(protocol)中。为方便起见,我将每个存储库都拉到“工作区文件夹”中,如下所示:/home/myWorkspace/Library1//home/myWorkspace/Library2//home/myWorkspace/Library3//home/myWorkspace/App1//home/myWorkspace/App2/我有FindLibrary1、FindLibrary2和FindLibrary3.cmake文件,它们按顺序在../(对应于“myWorkspace”文

c++ - 防止 CMake 查找已安装的库而不是 "local"库

我同时从事多个项目(一些库,以及一些依赖于它们的游戏)。它们都在GitHub上,在单独的repo协议(protocol)中。为方便起见,我将每个存储库都拉到“工作区文件夹”中,如下所示:/home/myWorkspace/Library1//home/myWorkspace/Library2//home/myWorkspace/Library3//home/myWorkspace/App1//home/myWorkspace/App2/我有FindLibrary1、FindLibrary2和FindLibrary3.cmake文件,它们按顺序在../(对应于“myWorkspace”文

linux - 带有生成文件 : add a sound at the end of build 的 CMake

在Linux下工作的一个大项目需要一些时间来构建,我想在构建结束时添加一个声音。我如何使用CMake做到这一点?我的第一个想法是添加一个像这样的命令add_custom_target(DONGALLCOMMANDaplay${PathDong}&)但我不知道如何创建对所有目标的依赖(毕竟要确保播放它)。是否有一个全局目标取决于所有定义的目标?注意:我在构建结束时需要它,而不是在安装结束时(这很容易)。 最佳答案 使用脚本。脚本执行CMake,然后播放声音。thispost中描述了几种解决方案.

linux - 带有生成文件 : add a sound at the end of build 的 CMake

在Linux下工作的一个大项目需要一些时间来构建,我想在构建结束时添加一个声音。我如何使用CMake做到这一点?我的第一个想法是添加一个像这样的命令add_custom_target(DONGALLCOMMANDaplay${PathDong}&)但我不知道如何创建对所有目标的依赖(毕竟要确保播放它)。是否有一个全局目标取决于所有定义的目标?注意:我在构建结束时需要它,而不是在安装结束时(这很容易)。 最佳答案 使用脚本。脚本执行CMake,然后播放声音。thispost中描述了几种解决方案.

c++ - 如何将现有的 CMake git repo 作为子模块包含在我自己的 CMake 项目中?

我正在尝试使用OpenKinect编写一些程序项目。我想将OpenKinect的主分支作为子目录添加到我的项目源代码中。但是,如果您查看OpenKinect自己的CMake,那里的东西太多了,我不需要所有东西。那里有某些选项,它们被设置为ON或OFF,如下所示:OPTION(BUILD_AUDIO"Buildaudiosupport"OFF)OPTION(BUILD_REDIST_PACKAGE"Buildlibfreenectinalegally-redistributablemanner(onlyaffectsaudio)"OFF)OPTION(BUILD_EXAMPLES"Bui

c++ - 如何将现有的 CMake git repo 作为子模块包含在我自己的 CMake 项目中?

我正在尝试使用OpenKinect编写一些程序项目。我想将OpenKinect的主分支作为子目录添加到我的项目源代码中。但是,如果您查看OpenKinect自己的CMake,那里的东西太多了,我不需要所有东西。那里有某些选项,它们被设置为ON或OFF,如下所示:OPTION(BUILD_AUDIO"Buildaudiosupport"OFF)OPTION(BUILD_REDIST_PACKAGE"Buildlibfreenectinalegally-redistributablemanner(onlyaffectsaudio)"OFF)OPTION(BUILD_EXAMPLES"Bui

c++ - CMake 在更改时不会重新编译源文件?

我正在使用cmake构建我的库,当我更改其中一个LIB_SRCS文件并在命令行中键入make时,它​​不会重新编译该文件!set(LIB_SRCS${PROJECT_SOURCE_DIR}/src/A.cpp${PROJECT_SOURCE_DIR}/src/B.cpp${PROJECT_SOURCE_DIR}/src/C.cpp)add_library(mylibSHARED${LIB_SRCS})add_dependencies(mylib${LIB_SRCS}) 最佳答案 您应该检查的第一件事是.o和.so与.cpp的修改时间

c++ - CMake 在更改时不会重新编译源文件?

我正在使用cmake构建我的库,当我更改其中一个LIB_SRCS文件并在命令行中键入make时,它​​不会重新编译该文件!set(LIB_SRCS${PROJECT_SOURCE_DIR}/src/A.cpp${PROJECT_SOURCE_DIR}/src/B.cpp${PROJECT_SOURCE_DIR}/src/C.cpp)add_library(mylibSHARED${LIB_SRCS})add_dependencies(mylib${LIB_SRCS}) 最佳答案 您应该检查的第一件事是.o和.so与.cpp的修改时间

linux - CMake - 更改当前目录(例如 : project/build ) from CMakeLists. txt?

我正在使用CMake构建项目。在配置和构建时,我在目录project/build中。如何更改CMake中的目录并从另一个目录执行bash脚本。execute_process(COMMANDcd../)-不工作。当我执行这个CMake时,它​​的目录没有改变,我又回到了项目/构建中。 最佳答案 execute_process命令的WORKING_DIRECTORY指令让您可以直接指定脚本运行的目录。execute_process(COMMAND${CMAKE_SOURCE_DIR}/script.shargsWORKING_DIREC

linux - CMake - 更改当前目录(例如 : project/build ) from CMakeLists. txt?

我正在使用CMake构建项目。在配置和构建时,我在目录project/build中。如何更改CMake中的目录并从另一个目录执行bash脚本。execute_process(COMMANDcd../)-不工作。当我执行这个CMake时,它​​的目录没有改变,我又回到了项目/构建中。 最佳答案 execute_process命令的WORKING_DIRECTORY指令让您可以直接指定脚本运行的目录。execute_process(COMMAND${CMAKE_SOURCE_DIR}/script.shargsWORKING_DIREC