精华内容
下载资源
问答
  • pkgconfig

    2019-11-26 16:03:57
    $ pkg-config --modversion opencv sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf' ...export PKG_CONFIG_PATH=~/opencv-3.4.1/build/installed/lib/pkgconfig exp...

    $  pkg-config --modversion opencv

    sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'

    sudo ldconfig

    export PKG_CONFIG_PATH=~/opencv-3.4.1/build/installed/lib/pkgconfig

    export LD_LIBRARY_PATH=~/opencv-3.4.1/build/installed/lib

    展开全文
  • pkgconfig details

    2020-05-05 17:17:40
    pkgconfig 配置工具 一般一个包作为pkg-config管理时,会有一个声明文件xxx.pc, 一般在电脑中的位置是 /usr/local/lib/pkgconfig /usr/lib/pkgconfig /usr/lib/x86_64-linux-gnu/pkgconfig pkg-config --cflags ...

    pkgconfig 配置工具
    一般一个包作为pkg-config管理时,会有一个声明文件xxx.pc, 一般在电脑中的位置是

    /usr/local/lib/pkgconfig
    /usr/lib/pkgconfig
    /usr/lib/x86_64-linux-gnu/pkgconfig
    
    pkg-config --cflags csm
    #-I/usr/include/cairo -I/usr/local/include
    

    CMakeLists.txt 如何使用

    find_package(PkgConfig REQUIRED)
    pkg_check_modules(YAML_CPP REQUIRED yaml-cpp)
    include_directories(${YAML_CPP_INCLUDE_DIRS})
    target_link_libraries(${PROJECT_NAME}  ${YAML_CPP_LIBRARIES}}
    
    
    展开全文
  • pkg-config简介 pkgconfig.pdf
  • Makefile好助手:pkgconfig.pdf
  • FindPkgConfig

    2016-08-22 10:18:23
    FindPkgConfig A pkg-config module for CMake. CMake的pkg-config模块。 Finds the pkg-config executable and add the pkg_check_modules() and pkg_search_module() commands. 查找 pkg-config 执行...

    FindPkgConfig

    A pkg-config module for CMake.

    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 or the PKG_CONFIG environment variable first.

    为了找到 pkg-config 执行档,首先使用 PKG_CONFIG_EXECUTABLE 变量或者 PKG_CONFIG 环境变量。

    pkg_check_modules

    Checks for all the given modules.

    检查所有给出的模块。

    pkg_check_modules(<PREFIX> [REQUIRED] [QUIET]
                      [NO_CMAKE_PATH] [NO_CMAKE_ENVIRONMENT_PATH]
                      <MODULE> [<MODULE>]*)
    

    When the REQUIRED argument was set, macros will fail with an error when module(s) could not be found.

    如果设置了 REQUIRED 参数,未找到模块时宏将错误并失败。

    When the QUIET argument is set, no status messages will be printed.

    如果设置了 QUIET 参数,将不打印状态信息。

    By default, if CMAKE_MINIMUM_REQUIRED_VERSION is 3.1 or later, or if PKG_CONFIG_USE_CMAKE_PREFIX_PATH is set, the CMAKE_PREFIX_PATH, CMAKE_FRAMEWORK_PATH, and CMAKE_APPBUNDLE_PATH cache and environment variables will be added to pkg-config search path. The NO_CMAKE_PATH and NO_CMAKE_ENVIRONMENT_PATH arguments disable this behavior for the cache variables and the environment variables, respectively.

    默认的,如果 CMAKE_MINIMUM_REQUIRED_VERSION 是3.1或之后的版本,或者设置了 PKG_CONFIG_USE_CMAKE_PREFIX_PATH,如下的缓存和环境变量将被添加到 pkg-config 查找路径:CMAKE_PREFIX_PATH,CMAKE_FRAMEWORK_PATH 和 CMAKE_APPBUNDLE_PATH 。 NO_CMAKE_PATH 和 NO_CMAKE_ENVIRONMENT_PATH 参数分别禁用上述的关于缓存变量和环境变量的行为。

    It sets the following variables:

    设置了如下的变量:

    PKG_CONFIG_FOUND          ... if pkg-config executable was found
    PKG_CONFIG_EXECUTABLE     ... pathname of the pkg-config program
    PKG_CONFIG_VERSION_STRING ... the version of the pkg-config program found
                                  (since CMake 2.8.8)
    

    For the following variables two sets of values exist; first one is the common one and has the given PREFIX. The second set contains flags which are given out when pkg-config was called with the --static option.

    存在下列的2个系列值;第一个系列是常用的并且以给出的 PREFIX 开始。第二个系列在当 pkg-config 被调用时带有 --static 选项时,包含给出的符号。

    <XPREFIX>_FOUND          ... set to 1 if module(s) exist
    <XPREFIX>_LIBRARIES      ... only the libraries (w/o the '-l')
    <XPREFIX>_LIBRARY_DIRS   ... the paths of the libraries (w/o the '-L')
    <XPREFIX>_LDFLAGS        ... all required linker flags
    <XPREFIX>_LDFLAGS_OTHER  ... all other linker flags
    <XPREFIX>_INCLUDE_DIRS   ... the '-I' preprocessor flags (w/o the '-I')
    <XPREFIX>_CFLAGS         ... all required cflags
    <XPREFIX>_CFLAGS_OTHER   ... the other compiler flags
    
    <XPREFIX> = <PREFIX>        for common case
    <XPREFIX> = <PREFIX>_STATIC for static linking
    

    There are some special variables whose prefix depends on the count of given modules. When there is only one module, <PREFIX> stays unchanged. When there are multiple modules, the prefix will be changed to <PREFIX>_<MODNAME>:

    有一些特殊的变量前缀依赖给出的模块数。当仅有一个模块给出时,<PREFIX> 保持不变。当有多个模块时,前缀将变为 <PREFIX>_<MODNAME> :

    <XPREFIX>_VERSION    ... version of the module
    <XPREFIX>_PREFIX     ... prefix-directory of the module
    <XPREFIX>_INCLUDEDIR ... include-dir of the module
    <XPREFIX>_LIBDIR     ... lib-dir of the module
    
    <XPREFIX> = <PREFIX>  when |MODULES| == 1, else
    <XPREFIX> = <PREFIX>_<MODNAME>
    

    A <MODULE> parameter can have the following formats:

    <MODULE> 参数可以是如下的格式:

    {MODNAME}            ... matches any version
    {MODNAME}>={VERSION} ... at least version <VERSION> is required
    {MODNAME}={VERSION}  ... exactly version <VERSION> is required
    {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
    

    Examples

    例如

    pkg_check_modules (GLIB2   glib-2.0)
    pkg_check_modules (GLIB2   glib-2.0>=2.10)
    

    Requires at least version 2.10 of glib2 and defines e.g. GLIB2_VERSION=2.10.3

    需要 glib2 的版本至少是2.10并且定义项如 GLIB2_VERSION=2.10.3

    pkg_check_modules (FOO     glib-2.0>=2.10 gtk+-2.0)
    

    Requires both glib2 and gtk2, and defines e.g. FOO_glib-2.0_VERSION=2.10.3 and FOO_gtk+-2.0_VERSION=2.8.20

    请求 glib2 和 gtk2,并且定义如 FOO_glib-2.0_VERSION=2.10.3 和 FOO_gtk+-2.0_VERSION=2.8.20

    pkg_check_modules (XRENDER REQUIRED xrender)

    Defines for example:

    定义例子:

    XRENDER_LIBRARIES=Xrender;X11``
    XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
    

    pkg_search_module

    Same as pkg_check_modules(), but instead it checks for given modules and uses the first working one.

    如同 pkg_check_modules(),但是代替它检查给定的模块并使用第一个工作的。

    pkg_search_module(<PREFIX> [REQUIRED] [QUIET]
                      [NO_CMAKE_PATH] [NO_CMAKE_ENVIRONMENT_PATH]
                      <MODULE> [<MODULE>]*)
    

    Examples

    例如

    pkg_search_module (BAR     libxml-2.0 libxml2 libxml>=2)
    

    PKG_CONFIG_EXECUTABLE

    Path to the pkg-config executable.

    pkg-config 执行档的路径。

    PKG_CONFIG_USE_CMAKE_PREFIX_PATH

    Whether pkg_check_modules() and pkg_search_module() should add the paths in CMAKE_PREFIX_PATH, CMAKE_FRAMEWORK_PATH, and CMAKE_APPBUNDLE_PATH cache and environment variables to pkg-config search path.

    pkg_check_modules() 和 pkg_search_module() 是否应该添加路径到 CMAKE_PREFIX_PATH, CMAKE_FRAMEWORK_PATH 和 CMAKE_APPBUNDLE_PATH 缓存和环境变量到 pkg-config 的搜索路径。

    If this variable is not set, this behavior is enabled by default if CMAKE_MINIMUM_REQUIRED_VERSION is 3.1 or later, disabled otherwise.

    如果变量没设置,在 CMAKE_MINIMUM_REQUIRED_VERSION 为3.1或以后的版本这个行为缺省是启用的,否则禁用。

    展开全文
  • linux yasm+pkgconfig+ffmpeg环境安装包,编译安装即可使用
  • Makefile好助手 pkgconfig

    2019-01-26 12:59:03
    Makefile好助手 pkgconfig
                   

    你在Unix下开发过软件吗?写完一个程序,编译运行完全正常,在你本机上工作得好好的,你放到源代码管理系统中。然后,告诉你的同事说,你可以取下来用了。这时,你长长的出了一口气,几天的工作没有白费,多么清新的空气啊,你开始飘飘然了。

     

    Hi,怎么编译不过去?”你还沉浸在那种美妙的感觉之中,双臂充满着力量,似乎没有什么问题能难倒你的。正在此时,那个笨蛋已经冲着你嚷开了。

     

    “不会吧,我这边好好的!”表面上你说得很客气,其实,你心里已经骂开了,真笨,不知道脑子干嘛用的。也许,你想的没错,上次,他犯了一个简单的错误,不是你一去就解决了吗。

     

    他喊三次之后,你不得不放下你手上的工作,刚才那种美妙的感觉已经消失得无影无踪了,要不是你把情绪控制得很好,一肚子气就要撒在他身上了。你走到他的电脑前,键入make,优雅的按下回车。怎么可能出错呢?你信心十足。然而,屏幕上的结果多少有点让人脸红,该死的,libxxx.so怎么会让不到呢?

     

    你在/usr目录中查找libxxx.so,一切都逃不过你的眼睛。奇怪,libxxx.so怎么在/usr/local/lib下,不是应该在/usr/lib下的吗?这你可不能怪别人,别人想安装在哪里都行,下次还可能安装到/lib目录下呢。

     

    以上的场景并非虚构,我都经历过好几次,明明在本机上好好的,在别人的机器上连编译都过不去。可能两人的操作系统一模一样,需要的库都安装上,只是由于个人喜好不同,安装在不同的目录而已。遇到这种情况,每次都技巧性的绕过去了,用的补丁型的方法,心里老惦记其它地方能不能工作。

     

    今天我们要介绍的pkgconfig,为解决以上问题提供了一个优美方案。从此,你再也不为此担忧了。Pkgconfig提供了下面几个功能:

     

    1.         检查库的版本号。如果所需要的库的版本不满足要求,它会打印出错误信息,避免链接错误版本的库文件。

    2.         获得编译预处理参数,如宏定义,头文件的位置。

    3.         获得链接参数,如库及依赖的其它库的位置,文件名及其它一些连接参数。

    4.         自动加入所依赖的其它库的设置。

     

    这一切都自动的,库文件安装在哪里都没关系!

     

    在使用前,我们说说pkgconfig的原理,pkgconfig并非精灵,可以凭空得到以上信息。事实上,为了让pkgconfig可以得到这些信息,要求库的提供者,提供一个.pc文件。比如gtk+-2.0pc文件内容如下:

     

    prefix=/usr

    exec_prefix=/usr

    libdir=/usr/lib

    includedir=/usr/include

    target=x11

     

    gtk_binary_version=2.4.0

    gtk_host=i386-redhat-linux-gnu

     

    Name: GTK+

    Description: GIMP Tool Kit (${target} target)

    Version: 2.6.7

    Requires: gdk-${target}-2.0 atk

    Libs: -L${libdir} -lgtk-${target}-2.0

    Cflags: -I${includedir}/gtk-2.0

     

    这个文件一般放在/usr/lib/pkgconfig/或者/usr/local/lib/pkgconfig/里,当然也可以放在其它任何地方,如像X11相关的pc文件是放在/usr/X11R6/lib/pkgconfig下的。为了让pkgconfig可以找到你的pc文件,你要把pc文件所在的路径,设置在环境变量PKG_CONFIG_PATH里。

     

    使用方法很简单,比如,我们要使用gtk+的库编译一个程序:

    gcc -g arrow.c -o arrow  `pkg-config "gtk+-2.0 > 2.0.0" --cflags --libs`

     

    只要安装了gtk+2.0,不管它在哪里,编译都是正常的。这是不是简单很多了?

     

               

    再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

    展开全文
  • pkgconfig pkgconfig是一个与pkg-config命令行工具连接的Python模块,并支持Python 2.6+和3.3+。 它可以用来 查找所有pkg-config软件包 >>> packages = pkgconfig.list_all() 检查包是否存在 >>> pkgconfig.exists...
  • Qt creator 使用pkgconfig

    千次阅读 2017-01-27 08:50:42
    CONFIG += link_pkgconfig PKGCONFIG +=glib-2.0
  • pkgconfig使用

    2009-09-20 20:18:00
    pkgconfig使用 - erlang非业余研究 - JavaEye技术网站pkgconfig使用关键字: pkgconfig install 你是否经常用到一个第3方的库的时候 经常不知道他的头文件在哪里库 文件在哪里,每个发行版本安装的地方都可能不太一样...
  • FindPkgConfig——a pkg-config module for CMake.pdf
  • install.packages( " pkgconfig " ) 典型用法 注意:这是一个真实的示例,但尚未在igraph软件包的CRAN版本中实现。 igraph包有两种返回一组顶点的方式。 在1.0.0版之前,它只是返回一个数值向量。 从1.0.0版开始,...
  • pkgconfig的使用

    2015-05-13 10:06:44
    在编译一个新的库时,除了生成include,lib还会生成一个pkgconfig目录,里面包括一个name.pc文件。 如下所示。 我们来看看这个pkgconfig目录下面的扩展名为.pc的文件内容。 根本上就是描述了includedir和...
  • /usr/lib/pkgconfig /usr/local/lib/pkgconfig
  • linux pkgconfig作用

    千次阅读 2010-07-24 10:41:00
    linux pkgconfig作用
  • Pkgconfig的作用与使用

    2018-01-04 08:50:37
    &nbsp; &...pkgconfig有什么用: &nbsp; &nbsp; &nbsp; &nbsp; 大家应该都知道用第三方库,就少不了要使用到第三方的头文件和库文件。我们在编译、链接的时候,必须要指...
  • pkgconfig试用

    2009-06-14 21:42:00
    你是否经常用到一个第3方的库的时候 经常不知道他的头文件在哪里库 文件在哪里,每个发行版本安装的地方都可能不太一样 这时候你就需要象pkgconfig这样的工具:首先为你要安装的库写一个.pc文件 如 lua.pc# lua.pc -...
  • CMake:pkgConfig.cmake

    2019-10-20 01:53:05
    CMake:pkgConfig.cmake1. OpenCVConfig.cmake语法1.1 指出OpenCV安装位置1.2 指出头文件位置1.3 指出库文件2. find_package查找   在CMake中,CMakeLists.txt项目配置文件。编译时,常需要包含库的头文件和连接...
  • pkgconfig(xkbcommon) is needed by qemu-kvm-rhev-10:2.12.0-48.el7_9.1.x86_64 pkgconfig(epoxy) is needed by qemu-kvm-rhev-10:2.12.0-48.el7_9.1.x86_64 pkgconfig(libdrm) is needed by qemu-kvm-rhev-10:...
  • 基于yocto交叉编译环境的Qt工具有时候在服务器端会加入一些本地无法识别的路径,导致本地编译出现各种异常,例如:无法编译通过基于pkgconfig的链接库 CONFIG += link_pkgconfig PKGCONFIG = gstreamer-1.0 报错...
  • 用 C/C++ 开发 Jetson 模组,需要 JetPack 的 pkgconfig 文件。相关文件保存在目录 /usr/lib/pkgconfig 下。目录下存了几十个 pc 文件,我今天要用到视频流解码的相关内容,估计与下面几个文件相关: nvgraph-10.2....
  • 和cmake相比,pkg-config是另一个独立的历史更悠久的library信息描述体系,cmake的FindPkgConfig Module的作用是调用pkg-config查找pkg-config格式的库信息. cmake 3.6版本以后用于查找pkg-config格式安装包...
  • Linux中的configure、pkg-config、pkg_config_path和安装中的PKG_CONFIG_PATH问题 pkgconfig.pdf

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,889
精华内容 7,155
关键字:

pkgconfig