Android NDK:一个函数会导致致命信号11(SIGSEGV)吗?

时间:2013-04-18 18:21:30

标签: c android-ndk

我正在尝试移植一个c应用程序,我得到以下内容......

  

04-18 18:39:05.325:D / DJNI(4973):开始主要厄运

     

04-18 18:39:05.335:D / DJNI(4973):空检查已完成

     

04-18 18:39:05.335:A / libc(4973):致命信号11(SIGSEGV)位于0x00000000(代码= 1),线程4998(线程-141)

当然,这似乎是这些线路的问题......

jni_printf("Starting Main APP");
if(clen == NULL)
        jni_printf("clen is null");
if(args == NULL)
        jni_printf("Args is null");
jni_printf("Null Check completed");
main(clen, args);
jni_printf("Start completed");

因此,我假设问题与主要功能有关。是对的吗?难道它无法使主函数实现抛出此错误吗?

我很困惑,因为它编译和链接很好,但我仍然得到这个错误。据我所知(我已经记录了gdb还不好)这必须与main函数一起使用。

其他课程

DIR1 / i_mainsdl.h

#ifndef __I_MAINSDL__
#define __I_MAINSDL__
extern int main(int argc, char **argv);
#endif

DIR1 / i_main.c

#include "i_mainsdl.h"
...
int main(int argc, char **argv)
{
  lprintf(LO_ALWAYS, "Starting the main function");
}

0 个答案:

没有答案