ubuntu 中的 pkg-config

原创 2012年03月23日 13:39:09

pkg-config 命令简介:

pkg-config 是一个常用的库信息提取工具。

pkg-config 工具从.pc文件中提取编译链接配置路径。

pkg-config 从一个叫做PKG_CONFIG_PATH的环境变量中查找pc文件

设置 环境变量命令:

export PKG_CONFIG_PATH=/opt/gtk/lib/pkgconfig:$PKG_CONFIG_PATH

应用例子:



1.例如借用GTK库编写的程序源文件名为gtk_example.c

通常我们用简单的gcc命令

gcc gtk_example.c 生成 a.out

或者在添加一些选相:

gcc gtk_example.c -o gtk_example

这是我们期待生成gtk_example

但是实际情况是我们会在编译阶段得到找不到头文件或者函数为定义的错误

这是因我我们包含的gtk头文件没有在默认的路径里。我们需要手动指出头文件的路径:

通常要用 -I /usr/local/inclue/gtk-2.0 

如果上面的路径变的话,我们也要跟着变编译命令

通常我们用把编译的工作用Makefile去做。如果

我们把源代码在别的主机中编译的话,就会有可能编译不过

通常情况下是因我上述包含路径有问题

这时我们不得不改Makefile。

有没有一个办法解决在任何主机上编译都不需要改Makefile 吗。

pkg-config 就是这个工具。


我对pkg-config的理解是用 pkg-config 可以把 Makefile 和编译路径无关连。

这样做就把编译工作分成了两部分。

一部发是 pkg-config 环境设置,。

相当与给makefile 编写一个 pkg-config驱动。


我们gcc 命令可以通过pkg-config 工具这样写:

gcc gtk_example.c `pkg-config --flags  --libs  glib-2.0`

其中--flags 指的是找头文件

--libs是找库

glib-2.0 是库的名字。






版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

pkg-config的安装配置及其作用

最近在安装OpenCV1.0的时候需要用到pkg-config。 (一)、     首先到网上下载pkgconfig,地址:http://download.chinaunix.net/downloa...

[Linux] ubuntu 中的pkg-config

pkg-config 命令简介:pkg-config 是一个常用的库信息提取工具。pkg-config 工具从.pc文件中提取编译链接配置路径。pkg-config 从一个叫做PKG_CONFIG_P...

Vim小技巧---代码自动对齐,智能提示

自动对齐:(gg=G) 在命令模式下(即非“插入”等编辑模式),先输入gg,这时候光标会移动到第一行第一个字符,然后按 “=” 号之后切换成大写,再按一下G,这时候光标会移到最后一行的第一个字符,这时...

linux下软件的安装与卸载方法

 linux下安装软件,如何知道软件安装位置 注:一般的软件的默认安装目录在/usr/local或者/opt里,可以到那里去找找. 指令名称:whereis 功能介绍:在特定目录中查找符...

Ubuntu14.04下Sublime Text 3若干问题

Sublime Text 3安装遇到的若干问题

安装完ubuntu要做的几件事

安装完Ubuntu需要做的事情本文以Debian 8为例1、首先肯定是要安装一个中文输入法的,作为一个中国人,这点肯定是毋庸置疑的,好了,费话不多说a) sudo apt-get install ib...

VIM下,在文件及目录中查找字符串的方法 (vimgrep)

vimgrep /匹配模式/[g][j] 要搜索的文件/范围  g:表示是否把每一行的多个匹配结果都加入 j:表示是否搜索完后定位到第一个匹配位置 vimgrep /pattern/ %      ...

VIM下,在文件及目录中查找字符串的方法 (vimgrep)

以前用editplus的时候,有一个在文件中查找的功能,可以在所有打开的文件中查找字符串,也可以在某一个目录及它的子目录中查找.那么在VIM中是否也有相关的功能呢?答案当然是肯定的.VIM中有个类似g...

PKG_CONFIG_PATH错误提示解决办法

linux里的解决办法,留着做参考 http://forum.ubuntu.org.cn/viewtopic.php?f=33&t=118762 为什么我还是有一些包提示没有啊? N...

如何更改linux文件的拥有者及用户组(chown和chgrp)

一、基本知识   在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)