读书人

急linux 上代码编译出现/usr/bin/ld:

发布时间: 2013-02-15 15:46:56 作者: rapoo

急!急!急linux 下代码编译出现/usr/bin/ld: cannot find -lsicui18n

我的linux是Red Hat Enterprise Linux 6.

[oracle@localhost main]$ make
g++ -g -Wno-deprecated -fpermissive -I/home/oracle/inas/include -I/usr/local/include -I/usr/local/include -I/u01/app/oracle/product/11.2.0/client_1/rdbms/demo -I/u01/app/oracle/product/11.2.0/client_1/rdbms/public -I/u01/app/sybase/OCS-15_0/include -DNEEDTRACE -D_THREAD_SAFE -DNEEDDEBUG -DTIXML_USE_STL -DWITH_NONAMESPACES -DLinux -DSYBASE -L/home/oracle/inas/lib -L/usr/local/lib -L/usr/local/lib -L/u01/app/oracle/product/11.2.0/client_1/lib32 -L/u01/app/oracle/product/11.2.0/client_1/rdbms/lib -L/u01/app/oracle/product/11.2.0/client_1/lib -L/u01/app/sybase/OCS-15_0/lib -L/usr/local/lib /home/oracle/inas/src/main/INAS.o -o /home/oracle/inas/debug/bin/TATD-V2 -lservice -lcontrol -lmcenter -lalarm -lworkflowctrl -lroute -linterface -lmapping -lproc -lormap -lmessage -linsttransH -linstctrl -ltemplet -lne -lsoap -lxml -lcommunicate -lstream -lsocket -lticket -ldb -llog4cpp -lthread -lutil -lclntsh -pthread -lnsl -lm -lsicui18n -lsicuuc -lsicudata
/usr/bin/ld: cannot find -lsicui18n
collect2: ld returned 1 exit status
make: *** [TATD-V2] Error 1
[oracle@localhost main]$


在/usr/local/lib 下面有

libicudata.so.42 libicuio.so libicule.so.36.0 libiculx.so.42.1 libicuuc.so.36
icu libiconv.so libicudata.so.42.1 libicuio.so.36 libicule.so.42 libicutu.so libicuuc.so.36.0
libcharset.a libiconv.so.2 libicui18n.so libicuio.so.36.0 libicule.so.42.1 libicutu.so.36 libicuuc.so.42
libcharset.la libiconv.so.2.5.0 libicui18n.so.36 libicuio.so.42 libiculx.so libicutu.so.36.0 libicuuc.so.42.1
libcharset.so libicudata.so libicui18n.so.36.0 libicuio.so.42.1 libiculx.so.36 libicutu.so.42 preloadable_libiconv.so
libcharset.so.1 libicudata.so.36 libicui18n.so.42 libicule.so libiculx.so.36.0 libicutu.so.42.1
libcharset.so.1.0.0 libicudata.so.36.0 libicui18n.so.42.1 libicule.so.36 libiculx.so.42 libicuuc.so
查了好多资料都是一样的创建软连接,还有就是在/etc/ld.so.conf,
在ld.so.conf.d我添加了icu-4.conf文件;里面写了这个ICU的装的的路径在/usr/loacl/lib 但是还是现实

/usr/bin/ld: cannot find -lsicui18n
collect2: ld returned 1 exit status
make: *** [TATD-V2] Error 1
不知道了,整了两三天了,出不来,各位大虾,帮帮忙。。。。。。。。。。。。。。。。。。。。。。。。。。 linux
------解决方案--------------------


-lsicui18n 目测需要的库文件是 libsicui18n.so* 你看看是不是你的库写错了还是什么的?
[解决办法]
应该是库的问题,这里有一个CSDN的博客楼主可以看看
http://blog.csdn.net/mzwang123/article/details/6702889
[解决办法]
你的/usr/local/lib目录下并没有libsicui18n.so这个库文件,所以找不到。
搜索一下libsicui18n.so在哪,把它的路径用-L加到Makefile里云。

读书人网 >UNIXLINUX

热点推荐