符号查找错误(Linux-C ++)

Dia*_*ako 3 c++ linux linker-errors

我正在使用类似Robocup soccerrSim2dGnu-linux的多代理系统。我的distb是Ubuntu 11.10(内核3.2-gcc 4.6)

我从源代码安装了librcsc。(它已成功编译并安装)

然后我从src 安装了agent2d。(它也成功编译并安装!)

但与运行agent2d代码中的问题:(当我运行src/start.sh:)

发生此错误:

./src/sample_player:符号查找错误:/usr/local/lib/librcsc_agent.so.7:未定义的符号:_ZN4rcsc9UDPSocketC1EPKci

你们觉得呢?实际上,什么时候出现“符号查找错误”?

Bor*_*lid 5

贯穿该符号c++filt表明它是rcsc::UDPSocket::UDPSocket(char const*, int)

由于这确实是其中的一部分rcsc,因此您需要查看ldd /usr/local/lib/librcsc_agent.so.7。那里librcsc.so.X(代表某个号码X)的条目可能显示“未找到”。您必须找到合适的库(包括ldd正在搜索的数字后缀),并将包含该目录的目录添加到脚本中的LD_LIBRARY_PATH环境变量start.sh