JAVA怎么查找错误,如何调试错误“符号查找错误:未定义符号”
我创建了一个app(api_tests),它使用链接到oracle occi库(libocci.so.12.1)的库(libstorage.so)并编译它 . 当我运行这个应用程序时,我收到一个错误:
api_tests
api_tests: symbol lookup error: ./libstorage.so: undefined symbol: _ZN6oracle4occi11Environment17createEnvironmentENS1_4ModeEPvPFS3_S3_mEPFS3_S3_S3_mEPFvS3_S3_E
但是,此符号的库存在于当前目录中:
ls | grep libocci
libocci.so*
libocci.so.11.1*
libocci.so.12.1*
nm libocci.so.12.1 | grep _ZN6oracle4occi11Environment17createEnvironmentENS1_4ModeEPvPFS3_S3_mEPFS3_S3_S3_mEPFvS3_S3_E
0000000000097e70 T _ZN6oracle4occi11Environment17createEnvironmentENS1_4ModeEPvPFS3_S3_mEPFS3_S3_S3_mEPFvS3_S3_E
0000000000125014 r _ZN6oracle4occi11Environment17createEnvironmentENS1_4ModeEPvPFS3_S3_mEPFS3_S3_S3_mEPFvS3_S3_E$$LSDA
当前路径添加到LD_LABRARY_PATH:
echo $LD_LIBRARY_PATH
./:/usr/vacpp/bin/../lib:/lib
我想知道我的库有什么问题以及如何调试这个问题?
更新:看起来这个库没有链接(至少ldd没有显示这种依赖) . 我想这是makefile中的错误,它被编译但在运行时失效 .
JAVA怎么查找错误,如何调试错误“符号查找错误:未定义符号”相关推荐
- 笔记-- vs2008 ,右键转到定义,弹出“未定义符号”
具体情况为:新建一个项目,将原来某工程的.cpp和.h文件拷贝过来,还有一个工程,都加入该项目:编译,通过:但右键转到定义,弹出"未定义符号".与这一现象同时出现的,是类视图里并没 ...
- (OS X) OpenCV架构x86_64的未定义符号:错误(OpenCV Undefined symbols for architecture x86_64: error)...
原地址: http://www.it1352.com/474798.html 错误提示如下: Undefined symbols for architecture x86_64:"cv::_ ...
- 符号未定义Java_Java ODBC数据源(未定义符号:SQLAllocEnv)
我有以下Java代码.该代码的目的是建立与远程MySQL数据库ProductionDb(在我的/etc/odbc.ini文件中定义的数据源)的连接. import java.sql.*; import ...
- VS2005右键点击转到定义后出现“未定义符号”的提示及其解决
1.有可能是VA未安装正确,但是我遇到的情况是我的VA安装正确的. 2.我的解决办法:删掉工程的.ncb文件后重新编译即可:以前也遇到过断点打不上去的事情,也是删掉.ncb后重新编译就可以了. 附带一 ...
- 编译的时候所使用的动态库中出现错误:未定义的引用
1.使用makefile编译的时候,出现错误如下: 如上图所示,是在动态库libicdbapi.so中出现了未定义错误,既然是未定义错误,说明sqlprct.....sqlnult这5个符号是外部符号 ...
- Matlab:解决错误:未定义的函数或变量
Matlab:解决错误:未定义的函数或变量 验证函数或变量名称的拼写 验证输入是否符合函数语法 确保函数名称与文件名匹配 确保安装了必要的工具箱并且版本正确 验证用于访问函数工具箱的路径 确认许可证有 ...
- 疑难杂症篇(十三)--Java中出现“找不到符号“的错误解决方案
问题描述:编写了一个Java程序,编译过程中出现"找不到符号"的错误,如下图所示: 解决方案 a.所编写的java程序如下图: b.解决方案如下图: c.成功编译,问题解决. Ja ...
- android gdb 远程调试工具,gdb输入/输出错误远程调试到Android
我试图调试一个调用本地代码来执行一些GL渲染的android应用程序.本机代码是我试图移植的现有代码(并且我不太清楚).我已经有了正确编译,链接和正确安装的代码,并且我有一些原生函数调用了从我的Jav ...
- android 获取堆栈地址,关于java native interface:如何捕获SIGSEGV(分段错误)并在Android下的JNI下获取堆栈跟踪?...
我正在将一个项目转移到新的Android本机开发工具包(即JNI)中,我想捕获sigsegv,如果它发生(也可能是sigill.sigabrt.sigfpe),以便呈现一个很好的崩溃报告对话框,而不是 ...
最新文章
- 点分治问题 ----------- HDU4812 D Tree [点分治 + 乘法逆元]
- PHP JSON_ENCODE 不转义中文汉字的方法
- 当当的羊毛又该剪了!官方活动基础上的额外优惠券,速领!
- Bit,Byte,Word,Dword,Qword
- NIO详解(一):java网络编程IO总结(BIO、NIO、AIO)
- vuex模块化 怎么引用state_[Vuex系列] - 细说state的几种用法
- C#中NameValueCollection类用法详解
- matlab watershed函数简单实现_函数指针方法实现简单状态机(附代码)
- 【转】非常道-中小软件公司项目管理
- [git]git的基本原理|git branch|git
- flask-sqlAlchemy 创建表
- ElasticFusion: Real-Time Dense SLAM and Light Source Estimation
- 关于Ubuntu 16.04系统挂载硬盘以及迁移MYSQL数据存储目录的操作步骤
- JAVA回合制pk游戏
- Redis 配置文件重要属性介绍
- 物联网 嵌入式 单片机 毕设如何选题 【项目分享】
- 如何评价柏拉图_哲学家如何看待死亡?|读柏拉图《斐多篇》(1)
- Pycharm——4 元组和 5 字典
- 计算机路由器无线级联配置,两个无线路由器级联怎么设置?
- Excel:IF条件类函数