REDHAT 9.0 的GCC 3.2.2 有Bug ?
我在 REDHAT 9.0 下编译程序, 出现如下错误:
g++ -Wall -g -o gmpsadm adm_main.o adm_login.o adm_param.o adm_city.o adm_pos.o adm_oper.o adm_tran.o adm_sys.o adm_utils.o adm_sybclient.o /opt/sybase/lib/libct.so /opt/sybase/lib/libcs.so /opt/sybase/lib/libsybtcl.so /opt/sybase/lib/libcomn.so /opt/sybase/lib/libinsck.so /opt/sybase/lib/libintl.so -lgt_banks -lgt_tools -lgt_curses -lpanel -lmenu -lcurses
/opt/sybase/lib/libintl.so: undefined reference to `__ctype_b'
collect2: ld returned 1 exit status
make: *** [gmpsadm] Error 1
说明:
1. 该程序在REDHAT 8.0上编译通过。
2. 在REDHAT 9.0上用GCC 编译任何程序, 只要链接了自带的库, 就会出现以上错误。但如果重新编译库, 则不会出现以上问题
不知是否是 REDHAT 9.0 上带的GCC 3.2.2有问题。。。。。。。请高手帮忙
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
更多
发布评论
评论(7)
这个程序是自己写的,还是?
新的gcc确实存在这个问题
偶还是觉得2.96好一些
:)
新的GCC 有问题? 可我记得 REDHAT 8.0 的GCC 也是3.2.2, 怎么一点问题都没有?
痛苦痛苦~ 莫非要重新恢复到REDHAT 8.0? REDHAT 有相关的补丁出来吗?
如果gcc的版本一样,就要看看你的程序了,要事有针对系统环境的地方,看看。
这样的问题有可能是gcc版本高造成的
我在RH9上也遇到同样的问题。
可不可以说说你提到的“重新编译库”是如何做的??
就是重新编译自己编写的库,而不是系统的库
不过, 据说和GCC 版本没有关系, 而是REDHAT 9。0 采用了UNICODE的缘故
所以,暂时没有办法,退回REDHAT 8.0 。。。。。。。。。。呵呵~