• 8615阅读
  • 9回复

QT里无法使用第三方库吗??? [复制链接]

上一主题 下一主题
离线succulent
 
只看楼主 倒序阅读 楼主  发表于: 2009-02-13
— 本帖被 XChinux 执行加亮操作(2009-02-16) —
在QT里使用libxml解析xml文件
发现编译时对其中的某个库函数始终出现错误提示
undefined reference to `xmlRecoverMemory'

但检查了头文件,有包含,Makefile里也看不出有什么需要修改的
所以,不知道是否QT里不支持类似libxml这样的第三方库的库函数,而只支持自己的函数

离线280923299
只看该作者 1楼 发表于: 2009-02-13
undefined reference to `xmlRecoverMemory'  == 没有xmlRecoverMemory的定义。。。

是不是没有在cpp里面写函数过程?
离线succulent
只看该作者 2楼 发表于: 2009-02-13
您指的写函数过程是什么意思呢
我在cpp里调用了这个函数,比如xmlRecoverMemory(arg1,arg2);
在h里include了<libxml/parser.h>,这个parser.h里包含了这个函数,有详细的定义
如果在cpp里不调用的话,那么编译是不会出错的,但只要一用到他,就说underined,实在搞不到到底错在什么地方了
离线wd007

只看该作者 3楼 发表于: 2009-02-13
有声明,无定义(实现),是不是第三方库编译不全
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线succulent
只看该作者 4楼 发表于: 2009-02-16
调用的是libxml库里的函数
这个库,如果被别的程序调用,那么是没有问题的,可以正常使用
请问还有可能是别的什么问题呢
我目前使用的是QT4
请问有在QT3下成功调用这个库的兄弟吗
离线mumutouv

只看该作者 5楼 发表于: 2009-02-16
检查一下你当前的qt版本连接库,如果是linux 下的话,可以看看/usr/lib/libQtXXXX.so连接指向什么版本库
离线optphantom

只看该作者 6楼 发表于: 2009-02-16
应该是没找到相应的链接库
离线weizhy
只看该作者 7楼 发表于: 2009-02-16
你有没有使用
CONFIG += xml
?
离线succulent
只看该作者 8楼 发表于: 2009-02-18
我的/usr/lib里有libQtXml.so几个库,可怎么查看呢,另外,这几个库是QT自带的吧,跟我现在所用的libxml没什么关系
现在我想知道的是,怎么解决这个问题,我已经在包括了这个头文件,在相应位置也有libxml这个库
编译的时候是自动生成的Makefile
那还能怎么办呢,谢谢
离线wd007

只看该作者 9楼 发表于: 2009-02-18
我查了一下qmake 手册,也许对你有帮助:

添加额外的库和头文件:

如果在应用中需要使用其他的库和头文件,可以用如下形式:
LIBS += -L/usr/local/lib -lsubversion
INCLUDE = /usr/local/include/subversion
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
快速回复
限100 字节
 
上一个 下一个