免费注册 查看新帖 |

Chinaunix

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

[新手入门] 程序编译出现 Undefined symbol: .libiconv_open [复制链接]

论坛徽章:
2
技术图书徽章
日期:2014-04-23 10:23:38射手座
日期:2014-08-14 17:00:52
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-07-23 18:58 |只看该作者 |倒序浏览

程序中使用了iconv库的一些接口,编译的时候也-liconv库,但是编译的时候出现了:

1>ld : 0711-317 error : Undefined symbol: .libiconv_open
1>ld : 0711-317 error : Undefined symbol: .libiconv
1>ld : 0711-317 error : Undefined symbol: .libiconv_close
1>  ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information

查看lpp:
#lslpp -l |grep iconv
  bos.iconv.com              6.1.6.0  COMMITTED  Common Language to Language
  bos.iconv.ja_JP            6.1.4.0  COMMITTED  EBCDIC & ASCII Language
  bos.iconv.ucs.com          6.1.6.0  COMMITTED  Unicode Base Converters for
  bos.rte.iconv              6.1.6.0  COMMITTED  Language Converters
  bos.rte.iconv              6.1.6.0  COMMITTED  Language Converters

请问这个问题由于什么原因导致的呢?

论坛徽章:
0
2 [报告]
发表于 2014-07-23 20:07 |只看该作者
在path里没找到对应的lib ?
你先看看libiconv.o 或libiconv.a在什么地方
有说法加-L/usr/local/lib

论坛徽章:
2
技术图书徽章
日期:2014-04-23 10:23:38射手座
日期:2014-08-14 17:00:52
3 [报告]
发表于 2014-07-24 10:33 |只看该作者
回复 2# orian


find之后就是在/usr/lib之下,然后-L指定了该目录,就是提示这个错误。

论坛徽章:
0
4 [报告]
发表于 2014-07-25 03:50 |只看该作者
还要加-liconv去link library

论坛徽章:
2
技术图书徽章
日期:2014-04-23 10:23:38射手座
日期:2014-08-14 17:00:52
5 [报告]
发表于 2014-07-25 15:54 |只看该作者
回复 4# orian


    这个库也加进去了。

  

最后这个问题的解决办法编译的时候去掉-L指定的/usr/lib这个选项。很奇怪的原因。/usr/lib不就是aix的默认库文件目录吗。

论坛徽章:
0
6 [报告]
发表于 2014-07-27 06:45 |只看该作者
哦,那是重名了,在/usr/lib有库和export list的名字一样,但不包含那几个routine
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP