手机
当前位置:查字典教程网 >编程开发 >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的方法详解】相关文章:

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

使用C# 判断给定大数是否为质数的详解

使用root权限运行自己所编译程序的解决方法

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

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

关于c语言的一个小bug详解

VC++中的字体设置方法详解

深入线性时间复杂度求数组中第K大数的方法详解

深入HRESULT与Windows Error Codes的区别详解

c++中.dll与.lib文件的生成与使用的详解

精品推荐
分类导航