我正在尝试移植 ac 应用程序,但我得到以下...
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 (code=1),线程 4998 (Thread-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");
}