通过cmake管理一个工程,工程中的src文件夹里面放了很多cpp源文件,每个源文件里面都包含一个main方法,这个工程主要是用于测试一些方法,因此希望每个源文件都可以单独编译并且调试。
写法如下,就是循环查找src路径下的cpp文件,然后对每个cpp文件建立一个可执行程序,并以cpp的文件名作为可执行程序的文件名。(src下面不能有同名的文件,即使在不同文件夹下,也不能同名)文章来源:https://www.toymoban.com/news/detail-854830.html
cmake_minimum_required(VERSION 3.27)
project(test)
file(GLOB_RECURSE files src/*.cpp)
message("${files}")
foreach (file ${files})
string(REGEX REPLACE ".+/(.+)\\..*" "\\1" exe ${file})
message("---------")
message("exe: ${exe}")
message("file: ${file}")
add_executable(${exe} ${file})
endforeach ()
用cmake生成一下,就可以得到多个target,选择希望生成的target,编译、调试或者运行。文章来源地址https://www.toymoban.com/news/detail-854830.html
到了这里,关于cmake使得工程中每个文件可以单独作为一个可执行程序的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!