加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

CMakeLists.txt中关于生成可执行文件时依赖的源文件在当前目录及

发布时间:2020-12-13 22:15:01 所属栏目:百科 来源:网络整理
导读:关于生成可执行文件时依赖的源文件在当前目录及当前目录子目录中的解决办法: 因为 aux_source_directory (./ EXE_SRC)中只能将当前目录中的源代码文件添加到变量 EXE_SRC中,如果最终要生成的文件还依赖与当前目录中子目录里面的源代码文件时,可以用如下的
关于生成可执行文件时依赖的源文件在当前目录及当前目录子目录中的解决办法:

因为 aux_source_directory (./ EXE_SRC)中只能将当前目录中的源代码文件添加到变量 EXE_SRC中,如果最终要生成的文件还依赖与当前目录中子目录里面的源代码文件时,可以用如下的方法

list命令

list(APPEND SRC_LIST 
          a.cpp
          b.cpp
    )

list(REMOVE_ITEM SRC_LIST
          a.cpp
    )

#假设有如下文件目录和源文件.
./Folder
|
+ --- a.cpp
+ --- b.cpp
+ --- c,cpp
|
+ --- other(文件夹)
|
+ --- d.cpp
+ --- e.cpp

#--------------------------------------------------------------------
# 若该动态库的生成不止依赖于当前目录下的所有源文件,还依赖该目录下
# 子目录 ( 假设为 other) 下的源文件,则做如下处理:
aux_source_directory (./ EXE_SRC ) # 将当前目录(不包含子目录)下所有源文件保存在变量 SRC_LIST
aux_source_directory (./other OTHER_SRC) # 将当前目录子目录 other 下的源文件保存在变量 OTHER_SRC_LIST
list ( APPEND EXE_SRC ${OTHER_SRC} ) # OTHER_SRC_LIST 添加到 SRC_LIST
#--------------------------------------------------------------------

# 根据变量 MODEL_SRC (代表当前目录及子目录下的所有源文件)
# 生成一个动态库 MODEL_dll SHARED 代表动态库)
add_library ( EXE _dll SHARED ${ EXE_SRC } )

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读