Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cmake 有没有办法在ExternalProject\u add target上添加pkg\u check\u模块依赖项_Cmake - Fatal编程技术网

Cmake 有没有办法在ExternalProject\u add target上添加pkg\u check\u模块依赖项

Cmake 有没有办法在ExternalProject\u add target上添加pkg\u check\u模块依赖项,cmake,Cmake,我正在使用ExternalProject\u Add从tar导入第三方库(dpdk) ExternalProject_Add( build-dpdk URL ${CMAKE_CURRENT_LIST_DIR}/dpdk-20.11.1.tar.xz URL_MD5 c6be9347f0200dc5315035720b732499 CONFIGURE_COMMAND meson <BINARY_DIR> <SOURCE_DIR> BUIL

我正在使用ExternalProject\u Add从tar导入第三方库(dpdk)

ExternalProject_Add( build-dpdk
    URL ${CMAKE_CURRENT_LIST_DIR}/dpdk-20.11.1.tar.xz
    URL_MD5 c6be9347f0200dc5315035720b732499

    CONFIGURE_COMMAND meson <BINARY_DIR> <SOURCE_DIR> 
    BUILD_COMMAND ninja
    INSTALL_COMMAND DESTDIR=<INSTALL_DIR> ninja install
)

但pkg_check_模块在配置阶段触发。有没有办法在ExternalProject\u add上添加pkg\u check\u模块的依赖项?

您可以发布当前的
pkg config--cflags--libs libdpdk的结果吗?据我回忆,默认的
pkg\u检查\u模块(DPDK需要libdpdk)
检查标准文件夹,如
/usr/lib//usr/include/
,以查找库和头。由于您正在使用
ExternalProject\u Add
作为一个单独的函数来构建和安装,您是否尝试在
install\u命令DESTDIR=ninja install
的末尾添加
ldconfig
。是否有关于检查comemnt中建议的参数的更新?是的,pkg\u check\u模块将在您提到的标准文件夹中进行检查。为了提供特定的搜索路径,我们可以设置env变量PKG_CONFIG_path或设置CMAKE_PREFIX_path。问题是,只有在ExternalProject添加构建并安装libdpdk.pc之后,我才找到了调用pkg_check_模块的方法。前者在配置阶段触发,后者在构建阶段触发。那么安装后的ldconfig对您有用吗?
pkg_check_modules(DPDK REQUIRED libdpdk)