免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3215 | 回复: 12
打印 上一主题 下一主题

LINUX上的编译问题--请大家帮助啊! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-07 14:42 |只看该作者 |倒序浏览
使用下面语句编译,(/home/qzdep/libxml_bin目录是libxml的安装目录)

gcc -o xmltest -I/home/qzdep/libxml_bin/include/libxml2 xmltest.c -Wl,-L/home/qz
dep/libxml_bin/lib -lxml2


执行结果:

./mktest
++ rm -f '*.o'
++ gcc -o xmltest -I/home/qzdep/libxml_bin/include/libxml2 xmltest.c -Wl,-L/home
/qzdep/libxml_bin/lib -lxml2
/tmp/ccChnZXY.o(.text+0x70): In function `main':
: undefined reference to `xmlReadFile'
collect2: ld returned 1 exit status
++ rm -f '*.o'

没有头绪啊,请大家帮助!谢谢!

论坛徽章:
0
2 [报告]
发表于 2006-11-07 14:46 |只看该作者
gcc的版本是:

# gcc --version
gcc (GCC) 3.2.3 20030502 (Asianux 1.0 3.2.3-36)
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

论坛徽章:
0
3 [报告]
发表于 2006-11-08 11:05 |只看该作者
哪位能帮帮忙?

论坛徽章:
0
4 [报告]
发表于 2006-11-08 14:46 |只看该作者
-I... 后面跟的是目录名

找不到定义,再检查头文件

论坛徽章:
0
5 [报告]
发表于 2006-11-09 14:27 |只看该作者

回复 1楼 mazhuang 的帖子

ps: 偶是LZ的同事,继续补充问题解决的情况

后来编译过了,但是执行的时候还是找不到这个函数,做了几个试验后,发现根本没有找到新编译的lib.
系统安装的时候就自带有libxml库,版本是2.5.10,现在用的是新下载的版本2.6.26

论坛徽章:
0
6 [报告]
发表于 2006-11-09 14:42 |只看该作者
哦,你也来了!有你在问题可以说的更清楚了!
现在好像也不是编译的问题了。

论坛徽章:
0
7 [报告]
发表于 2006-11-09 14:49 |只看该作者

回复 5楼 bjgoat 的帖子

因为目前的系统上存在不止一个版本的libxml,所以真的有些晕菜了,也不晓得系统到底用的是哪一个,但肯定不是新安装的这个版本,就在我们决定找新机器重装系统之前,竟然灵光一闪、神灵保佑,发现了问题的所在。
具体情况是这样的:
新版本安装完成后,在/usr/lib目录下执行命令ls -la *xml*,存在以下信息:

lrwxrwxrwx    1 root  root           17 5月  14  13:35 libxml2.so.2 -> libxml2.so.2.5.10
-rw-r--r--    1 root     root          283 11月  9 10:29 xml2Conf.sh
-rw-r--r--    1 root     root      3174164 11月  9 10:29 libxml2.a
-rwxr-xr-x    1 root     root          847 11月  9 10:29 libxml2.la
lrwxrwxrwx    1 root     root           17 11月  9 10:29 libxml2.so -> libxml2.so.2.6.26
-rwxr-xr-x    1 root     root      2301920 11月  9 10:29 libxml2.so.2.6.26

论坛徽章:
0
8 [报告]
发表于 2006-11-09 14:54 |只看该作者

回复 7楼 bjgoat 的帖子

问题就出现在libxml2.so.2 -> libxml2.so.2.5.10上,执行ln -s libxml2.2.6.26 libxml2.so.2
,使变成libxml2.so.2 -> libxml2.so.2.6.26,
然后再编译,执行,问题就搞定了!!!

论坛徽章:
0
9 [报告]
发表于 2006-11-09 15:15 |只看该作者

回复 8楼 bjgoat 的帖子

问题虽然解决了,但却不晓得其所以然,因为俺们是第一次接触libxml,加上安装命令中也没有类似的说明,所以还是晕乎着的。

有哪位大侠能够指点迷津呀,多谢啦!!

论坛徽章:
0
10 [报告]
发表于 2006-11-09 15:16 |只看该作者
LZ审查一下,应该没有什么遗漏吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP