"symbol lookup error"问题解决
2010-12-29 11:13
736 查看
http://www.linuxquestions.org/questions/slackware-14/symbol-lookup-error-usr-lib-libgtk-x11-2-0-so-0-undefined-symbol-434399/
今天调试一段程序,运行时提示:
“./test: symbol lookup error: ./test: undefined symbol: ……”
费了半天劲,终于发现问题的原因:
test程序使用的动态库存放的位置和Makefile里编译的动态库存位置不同。
定位过程如下:
#ldd test
……
libttt.so => /mylib/lib/libttt.so
……
而Makefile中 LIBS=../../lib/libttt.so,和上面的路径不同。
解决方法如下:
将make生成的libttt.so拷贝到/mylib/lib/libttt.so,修改即生效。
在使用linux共享库的时候,有很多情况是动态库的函数找不到,这就要使用ldd命令,看动态库是否加载正确。
今天调试一段程序,运行时提示:
“./test: symbol lookup error: ./test: undefined symbol: ……”
费了半天劲,终于发现问题的原因:
test程序使用的动态库存放的位置和Makefile里编译的动态库存位置不同。
定位过程如下:
#ldd test
……
libttt.so => /mylib/lib/libttt.so
……
而Makefile中 LIBS=../../lib/libttt.so,和上面的路径不同。
解决方法如下:
将make生成的libttt.so拷贝到/mylib/lib/libttt.so,修改即生效。
在使用linux共享库的时候,有很多情况是动态库的函数找不到,这就要使用ldd命令,看动态库是否加载正确。
相关文章推荐
- "symbol lookup error"问题解决
- "streambuf" ambiguous symbol的问题如何解决
- error LNK2019: unresolved external symbol "__declspec(dllimport) void 遇到的问题以及解决办法
- symbol lookup error"问题
- "_OBJC_CLASS_$ [文件名1]referenced from in[文件名2]:ld: symbol(s) not found问题解决办法
- 关于"symbol lookup error xxxxx , undefined symbol"问题的解决方式
- "Your project contains error(s),please fix them before running your application"问题解决
- "SymbianOS Error -3606"问题解决了
- "SymbianOS Error -3606"问题解决了
- CXX0017:Error:symbol "xxx" not found 问题解决方法
- 安装Visual Studio 6的"Error Lauching acmboot.exe"问题解决方法
- "invalid device symbol"问题解决
- "cannot locate symbol "sqlite3_enable_load_extension" referenced by "sqlite3" 问题解决
- "error while loading shared libraries: xxx.so.x" 错误的原因和解决办法
- QT开发中的"Undefined reference to vtable ***" 的问题解决办法
- 解决Exception in thread "main" java.lang.OutOfMemoryError: Java heap space问题
- "ScrollView can host only one direct child"问题解决
- 哥发明的 一个ssh整合时解决dao层代码冗余问题的"一点儿不漏"型抽取法!!!!
- "由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题"解决方法
- "error LNK2019: 无法解析的外部符号"错误的解决办法