首页 > 技术文章 > Qt for Android FAQ

wzxNote 2020-04-28 15:09 原文

  1. 其他版本(windows mingw)正常,但是android armv8调试的时候程序崩溃,没有具体错误提示,只有下面这一行:

F libc : Fatal signal 5 (SIGTRAP), code 1 (TRAP_BRKPT), fault addr 0x6f37841990 in tid 26404 (qtMainLoopThrea), pid 26369 (backManagerment)

Q: 经一步步调试得出的结论是数据库操作的代码段有一个分支没有return,例如下面这样:

bool function()
{
    if(A)
    {
        return false;
    }
    //此处没有写else的情况下的return。编译器不报错,在windows mingw下运行也不会报错
}

几个小时定位到是这个问题也挺讽刺的,按理说应该编译期检查的。具体细节就是android armv8编译器和mingw编译器之间的区别了。写代码还是要细心啊~

推荐阅读