我正在尝试移植一个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");
}