gcc -o test test.c `pkg-config --libs --cflags libwebp` 你甚至可以用 pkg-config 查看外部库在当前环境下的版本号: pkg-config libwebp --version 可以命令参数可以参考 --help 的输出。 在CMake 中使用 pkg-config 当然一般正式的项目都会使用元构建工具来进行跨平台的工程编译配置的生成,我这边使用的是...
2. pkg-config基础 2.1 原理 工作流程 作用和目的 2.2 相关命令 pkg-config --cflags pkg-config --libs pkg-config --list-all pkg-config --modversion 其他常用命令 2.3 环境变量 PKG_CONFIG_PATH PKG_CONFIG_LIBDIR PKG_CONFIG_ALLOW_SYSTEM_CFLAGS 和 PKG_CONFIG_ALLOW_SYSTEM_LIBS 3. .pc文件解析 3.1...
首先让CMake找到PkgConfig模块: set(PKG_CONFIG_EXECUTABLE "D:/vcpkg/installed/x64-windows/tools/pkg-config.exe") find_package(PkgConfig) 然后通过PkgConfig模块找到你想要找到的第三方库,这里我找一下SDL2: pkg_check_modules(REQUIRED SDL2 SDL2_image SDL2_ttf SDL2_mixer) pkg_search_module(SDL2 R...
add_executable(${PROJECT_NAME} ${SOURCE_FILES}) #add executable file # 4) package dependency (pkg-config) find_package(PkgConfig REQUIRED) #GTK_INCLUDE_DIRS : HEADER SERARCH PATHS #GTK_LIBRARIES : LIBRARY NAME #GTK_LIBRARY_DIRS : LIBRARY PATHS pkg_check_modules(GTK REQUIRED gtk+-3.0) # ...
Windows下CMake 中使用 pkg-config # set(PKG_CONFIG_EXECUTABLE "F:/vcpkg/packages/pkgconf_x64-windows/tools/pkgconf/pkgconf.exe") #set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH ON) set(PKG_CONFIG_ARGN "--errors-to-stdout" "--no-cache" "--log-file=F:/pkgconf.log" "--with-path=F:/vcpkg...
在默认情况下,每个支持 pkg-config 的库对应的.pc文件在安装后都位于安装目录中的lib/pkgconfig目录下.新软件一般都会安装.pc文件,没有可以自己创建,并且设置环境变量PKG_CONFIG_PATH寻找.pc文件路径,否则怎么找得到呢。使用pkg-config工具提取库的编译和连接参数有两个基本的前提: ...
2. CMakeLists.txt中使用pkg-config 包括3个具体的步骤: 确定.pc文件绝对路径(例如只提供.pc方式配置),记作$prefix/xxx.pc 在CMakeLists.txt中,分别把$prefix和xxx填写入座: set(ENV{PKG_CONFIG_PATH} $prefix) find_package(PkgConfig) pkg_search_module(MyDepName REQUIRED xxx) ...
CMake的pkg-config模块。 Finds the pkg-config executable and add the pkg_check_modules() and pkg_search_module() commands. 查找pkg-config 执行档并且添加 pkg_check_modules() 和 pkg_search_module() 命令。 In order to find the pkg-config executable, it uses the PKG_CONFIG_EXECUTABLE variable...
参见https://cmake.org/cmake/help/v3.6/module/FindPkgConfig.html 指定IMPORTED_TARGET参数,则创建名为PkgConfig::<PREFIX>的imported target,可以直接作为参数传递给target_link_libraries()。使用imported target代替传统的变量引用可以在很大程度上简化cmake脚本的编写。
INSTALL (FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}-config-version.cmake" COMPONENT Devel DESTINATION ${CMAKECONFIG_INSTALL_DIR}) # pkgconfig support IF (NOT CARES_SHARED) FOREACH (LIB ${CARES_DEPENDENT_LIBS}) SET (...