linux c 查找使用库的cflags与libs的方法详解_C语言教程-查字典教程网
linux c 查找使用库的cflags与libs的方法详解
linux c 查找使用库的cflags与libs的方法详解
发布时间:2016-12-28 来源:查字典编辑
摘要:很多时候,使用一些特别的库,在编译可执行程序时,需要添加额外的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

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C语言学习
    热门C语言学习
    编程开发子分类