符号查找错误(linux-c)
作者:互联网
我正在研究像Robocup soccerrSim2d On Gnu-linux这样的多代理系统.
我的distb是Ubuntu 11.10(内核3.2 – gcc 4.6)
我从源码安装了librcsc. (它已成功编译和安装)
然后我从src安装了agent2d. (它也成功编译和安装!)
但运行agent2d代码时出现问题:(当我运行src / start.sh时:)
发生此错误:
./src/sample_player: symbol lookup error:
/usr/local/lib/librcsc_agent.so.7: undefined symbol:
_ZN4rcsc9UDPSocketC1EPKci
你怎么看待这些家伙?实际上,“符号查找错误”何时发生?
解决方法:
通过c filt运行该符号表明它是rcsc :: UDPSocket :: UDPSocket(char const *,int).
既然这确实是rcsc的一部分,你需要看看ldd /usr/local/lib/librcsc_agent.so.7. librcsc.so.X(对于某些数字X)的条目可能会说“找不到”.您必须找到相应的库(包括正在搜索ldd所说的数字后缀),并将包含它的目录添加到start.sh脚本中的LD_LIBRARY_PATH环境变量中.
标签:c,linux,linker-errors 来源: https://codeday.me/bug/20190902/1791396.html