新闻  |   论坛  |   博客  |   在线研讨会
CMake定义宏的方式
电子禅石 | 2022-04-24 16:33:42    阅读:197471   发布文章

1、采用add_definitions定义宏,但是这种定义方式无法给宏具体值,比如:


     add_definitions(-DMG_ENABLE_OPENSSL)


对应于C语言中的


     #define  MG_ENABLE_OPENSSL


2、add_compile_definitions定义宏,这种方式可以给宏具体值,但是这个指令只要高版本的cmake支持,比如:


      add_compile_definitions(MG_ENABLE_OPENSSL=1)


对应于C语言中的


      #define  MG_ENABLE_OPENSSL   1 


CMakeLists.txt 文件中定义的宏在后面C/C++程序中是可以直接使用的

————————————————


原文链接:https://blog.csdn.net/a2886015/article/details/120328558


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
电子禅石  2022-10-13 17:43:46 

关键的是在哪个地方用用到这个宏的时候,要在文件夹中定义。还可以使用其他方式。 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D ENABLE_DATA_SYNC") MESSAGE(STATUS "datasync ${CMAKE_CXX_FLAGS}")

属于自己的技术积累分享,成为嵌入式系统研发高手。
推荐文章
最近访客