Fsu0413 / QtCompile

Personal build of Qt5 onwards, with SSL builtin. Multiple configuration available.
https://build-qt.fsu0413.me/
101 stars 12 forks source link

反应一个比较严重的问题。。 #16

Closed leamus closed 7 months ago

leamus commented 1 year ago

我的引擎和游戏在几周前用了5.15.10的安卓版本,一开始还好,上周突然出现了一个严重的Bug,而且只是闪退,我加入的报错、日志什么的完全没有记录,Qt调试安卓只有一句: W google-breakpad: ### ### ### ### ### ### ### ### ### ### ### ### ### W google-breakpad: Chrome build fingerprint: W google-breakpad: 70.0.3538.110 W google-breakpad: 353811050 W google-breakpad: ### ### ### ### ### ### ### ### ### ### ### ### ### F libc : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x100 in tid 22781 (qtMainLoopThrea), pid 22748 (amus.MakerFrame)

一开始我以为我代码有问题,但找了一周怎么也找不到,我只好拿出最原始的方案:一段一段的删代码,看看到底哪句有问题,直到我快把引擎代码删完了,才感觉应该是环境的问题,于是我原封不动的用5.15.2编译了下,正常运行,我靠。。。于是我又换回5.15.10,并用NDK(21.4)编译,问题依旧。。真是无语啊。。。

leamus commented 1 year ago

补充一下,这个问题有规律可循,使用引擎时次数相对较多,导出的游戏只要执行一段特定的代码33次就会闪退,代码差不多长这样: game.asyncScript.run() //运行33次会闪退 其中:

game.asyncScript = new AsyncScript(); //AsyncScript时JS的一个函数 function AsyncScript() {

    let ret = null;

    //循环运行脚本
    while(1) {

        if(this.waiting === true)
            return;

        if(arrGeneratorScript.length === 0)  //如果列表为空
            return ret;    //我测试的时候一直是从这里返回的,下面代码不会运行

。。。

Fsu0413 commented 1 year ago

这样,如果可以提供一个最小程度的能复现问题的工程,我可以通过这个来开始查 否则就这一段代码我也不知道应该往哪放。。。。JS我也不太会

leamus commented 1 year ago

我试试吧,这还有点复杂,得慢慢删减代码。。

Fsu0413 commented 1 year ago

有什么更新吗。。。。

leamus commented 1 year ago

还没,年底了忙的没时间弄。。

Fsu0413 commented 1 year ago

目前我知道的消息都说是5.15.9以及以后的安卓版有问题,但是我具体也不知道是什么情况。。。。 也不知道是我的问题还是Qt本身就有问题。

如果5.15.8能用(并且你还留着)的话,可以试试用回5.15.8。。。。。

leamus commented 1 year ago

5.15.8我有,很不幸这个版本也有问题。。 目前5.15.2是完全正常的,新出的5.15.11我还没试,不过大概率也有问题(5.15.8-5.15.10都有了),等不忙的时候我再试试。 安卓版的是什么问题,有详细说明吗?我这边只是莫名其妙的卡死然后闪退。。

Fsu0413 commented 1 year ago

说是Widget有问题,不过具体什么问题我也不太知道,我自从3月份之后就没再碰安卓了

leamus commented 1 year ago

我倒是没用widget,手机端还是qml比较香(手机端用widget体验太差了) 好像也再没三方编译好的库环境了,不然我可以再测测

Fsu0413 commented 7 months ago

https://github.com/Fsu0413/QtCompile/issues/17#issuecomment-1931219354

闪退貌似解决了?先关了,还有闪退就直接报到 #17 里吧。。。 实际上我看到这些个问题我根本没头绪,也没有最小限度的复现程序,我也没法查