【醒目】Unix下用jni调c++编译so库问题

glassegg 2007-11-06 11:34:50
如题,Solaris10 unix里jni载入c++编译生成.so文件,执行出错。分析问题可能在于C++一个类中定义的static RWCString变量赴值越界。比如
pulic class A{
public static RWCString abc;
}
class B{
RWCString A::abc;
↓↓↓↓↓↓↓↓↓↓↓↓↓
A::abc[0]=0;
↑↑↑↑↑↑↑↑↑↑↑↑↑
}
程序执行以后,系统就会崩掉,好像是segment越界。
记不太清了,好像是这个情形。

不知道各位有没有这方面经验,给介绍一下。有相关的例子,麻烦给个链接
...全文
178 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
glassegg 2007-11-07
  • 打赏
  • 举报
回复
好像是编译选项的问题
出现的是字符串头文件引用错误的异常。今天调试了1天,有点眉目了。
谢谢回复
hefuhua 2007-11-07
  • 打赏
  • 举报
回复
"solaris10里边好像没有gdb"
可以下源码编译,不知道可以不可以用..

我没有学过C++
不懂可能帮不了你:(

RWCString如果表指针的那么事可以A::abc[0]=0;这么用的..
最好在用之前能检查下
if(A::abc)再使用..

如果怀疑事静态的问题可以去掉静态试试..
glassegg 2007-11-06
  • 打赏
  • 举报
回复
顺问一下,再unix下边怎么调试程序?debug?
solaris10里边好像没有gdb,而且,不知道能不能把java和c++一起调试?
glassegg 2007-11-06
  • 打赏
  • 举报
回复
不知道是不是java和c++调用的时候还有什么规范?
glassegg 2007-11-06
  • 打赏
  • 举报
回复
uuuuup

23,217

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧