首页 > 解决方案 > 从 GCC 转换为 CMake

问题描述

CMake 相当于什么:

gcc filename.c -o filename $(pkg-config --libs --cflags mylib)

我对此很感兴趣$(pkg-config --libs --cflags mylib),因为我已经有可以编译的代码,我只需要添加mylib库。

标签: gcccmakepkg-configcflags

解决方案


看一下FindPkgConfig模块
src:https ://cmake.org/cmake/help/latest/module/FindPkgConfig.html

CMakeLists.txt 示例:

include(FindPkgConfig)

pkg_check_modules(MYLIB REQUIRED mylib)
...
add_executable(filename filename.c)
target_include_directories(filename PUBLIC ${MYLIB_INCLUDE_DIRS})
target_compile_options(filename PUBLIC ${MYLIB_CFLAGS})
target_link_libraries(filename ${MYLIB_LIBRARIES})

推荐阅读