在编译一个程序时,由于没有在Makefile中引入库libconv.lib, 产生如下的错误,解决方法为:在makefile链接时,加入-liconv即可。
g++ -o /program/netopt/bin/Forecast -L/usr/lib -L/usr/local/lib -L/program/net
opt/lib -L/program/oracle/ora92/lib main.o ForecastForcastServiceSoapService.o
ForecastC.o Forecast.o ForecastPC.o /
-ldl -lpthread -lACE -lnsl -lrt -lclntsh -lOptNetComm -lKpiEngine -lsocket
未定义 文件中的
符号 在文件中
libiconv_close /program/netopt/lib/libOptNetComm.so
libiconv_open /program/netopt/lib/libOptNetComm.so
libiconv /program/netopt/lib/libOptNetComm.so
ld: 致命的: 符号参照错误. 没有输出被写入/program/netopt/bin/Forecast
collect2: ld returned 1 exit status
*** Error code 1
make: Fatal error: Command failed for target `/program/netopt/bin/Forecast'
本文介绍了一种在编译程序时遇到的由于缺少libiconv库而导致的链接错误,并给出了具体的解决办法:通过在Makefile中添加-liconv来引入所需的libiconv库。
2181

被折叠的 条评论
为什么被折叠?



