手机
当前位置:查字典教程网 >编程开发 >C语言 >linux c 查找使用库的cflags与libs的方法详解
linux c 查找使用库的cflags与libs的方法详解
摘要:很多时候,使用一些特别的库,在编译可执行程序时,需要添加额外的CFLAGS和LIBS.否则会提示找不到指定的头文件或者"undefinedr...

很多时候,使用一些特别的库, 在编译可执行程序时, 需要添加额外的 CFLAGS 和 LIBS . 否则会提示找不到指定的头文件或者"undefined reference to ..." 的错误信息.

假如程序 test.c 中使用了 libxml 的 api, 直接

复制代码 代码如下:

$ gcc -Wall -o test test.c

会提示错误消息.

执行

复制代码 代码如下:

$ ls /usr/lib/pkgconfig/ | grep libxml

libxml-2.0.pc

复制代码 代码如下:

$ cat /usr/lib/pkgconfig/libxml-2.0.pc

prefix=/usr

exec_prefix=/usr

libdir=/usr/lib

includedir=/usr/include

modules=1

Name: libXML

Version: 2.6.26

Description: libXML library version2.

Requires:

Libs: -L${libdir} -lxml2 -lz -lm

Cflags: -I${includedir}/libxml2

其中, Libs 和 Cflags 即是所需要的信息. 可以用如下命令得到

复制代码 代码如下:

$ pkg-config libxml-2.0 --cflags --libs

-I/usr/include/libxml2 -lxml2 -lz -lm

因此, 在编译时, 只需要执行

复制代码 代码如下:

$ gcc -Wall `pkg-config libxml-2.0 --cflags --libs` -o test test.c

【linux c 查找使用库的cflags与libs的方法详解】相关文章:

给ActiveX签名的实现方法详解

linux c 获取本机公网IP的实现方法

linux c程序中获取shell脚本输出的实现方法

解析在Direct2D中画Bezier曲线的实现方法

深入C中常用的三种排序方法总结以及探讨分析

使用C++实现全排列算法的方法详解

深入单链表的快速排序详解

C语言解线性方程的四种方法

深入Linux grep指令的详解(实用型)

解决C++ 无法从void 转换为LRESULT的方法详解

精品推荐
分类导航