Robosturm / Commander_Wars

The aim of this project is to create an Advance Wars Clone with a lot of additions customizations and modding support. For Contact Inforamtion see the wiki page. Take a view on the game.
https://github.com/Robosturm/Commander_Wars/releases
GNU Lesser General Public License v3.0
213 stars 33 forks source link

V36 Linux build crashes immediately after loading the game #1777

Closed lonewolf19991 closed 4 months ago

lonewolf19991 commented 5 months ago

Describe the bug When running the v36 version of the game, it crashes with a crash log, described here:

Commander Wars v0.36.2-main Builddate: Mar 11 2024 18:04:19 20 Mar 2024 @ 04:34:24

Error: signal 11 received

./commander_wars(_Z12crashhandleri+0x51) [0x60a2053debf1] /lib/x86_64-linux-gnu/libc.so.6(+0x42990) [0x7fdaec442990] /usr/local/ssl/lib64/libcrypto.so.3(BN_clear_free+0xe) [0x7fda9d31557e] /usr/local/ssl/lib64/libcrypto.so.3(BN_MONT_CTX_free+0x16) [0x7fda9d316fe6] /usr/local/ssl/lib64/libcrypto.so.3(+0x16df94) [0x7fda9d36df94] /usr/local/ssl/lib64/libcrypto.so.3(DH_free+0x4a) [0x7fda9d36e92a] /home/nameless/qtversions/6.6.2/gcc_64/plugins/tls/libqopensslbackend.so(+0x319f8) [0x7fdac00539f8] /home/nameless/qtversions/6.6.2/gcc_64/plugins/tls/libqopensslbackend.so(+0x32a1b) [0x7fdac0054a1b] /home/nameless/qtversions/6.6.2/gcc_64/plugins/tls/libqopensslbackend.so(+0x2b639) [0x7fdac004d639] /home/nameless/qtversions/6.6.2/gcc_64/plugins/tls/libqopensslbackend.so(+0x2edc9) [0x7fdac0050dc9] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Network.so.6(_ZN17QSslSocketPrivate16_q_connectedSlotEv+0x158) [0x7fdaee09ba38] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Core.so.6(+0x1b9f58) [0x7fdaecdb9f58] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Network.so.6(+0xab798) [0x7fdaee00d798] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Network.so.6(+0xb1798) [0x7fdaee013798] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Widgets.so.6(_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0x82) [0x7fdaee382032] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Core.so.6(_ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent+0x11a) [0x7fdaecd5d5ba] /home/nameless/qtversions/6.6.2/gcc_64/lib/libQt6Core.so.6(+0x4055c4) [0x7fdaed0055c4] /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x5ab2c) [0x7fdaec30cb2c] /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0xb646f) [0x7fdaec36846f] /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x30) [0x7fdaec30ad20]

To Reproduce The game is running with qt 6.6.2, and openssl 3.2.1, other versions run properly

Expected behavior Game would load the main menu as usual

Screenshots Screenshot from 2024-03-20 04-41-06

Desktop (please complete the following information):

Additional context Add any other context about the problem here.

lonewolf19991 commented 5 months ago

Warning: Couldn't load VAAPI library File: Line: 0 Function:

Got this in the console.log, but the library is in the system as: gstreamer1.0-vaapi is already the newest version (1.22.6-1)

Robosturm commented 5 months ago

As usual I'mnot really able to help with linux crashes. Signal 11 equals a segmentation fault which would mean the openssl lib isn't compatible since the crash happens inthe crypto lib.

What dou you mean with other versipns work? Qt-Version, OpenSssl-Version or gameversion. And which versions did you try?Cause the major change happend with v34.

lonewolf19991 commented 5 months ago

I have used the same versions (qt 6.6.2, and openssl 3.2.1), with each different version of the game.

Seemingly the error starts occuring since v35_0 of the game. With the same output. And by that I meant the game versions with those dependencies. What changes occured between [Release Beta_35_0_Build1] and [Release Beta_34_5_Build2] that you would consider could affect the dependencies in the error?

V34_5Build2, works as intended. It's from 35_0Build1, that the error starts showing up.

These are all, by using the binaries that were provided by the workflow.

lonewolf19991 commented 5 months ago

I have been checking the differences in code, and so far I gotta ask about this one:

JAVA_PATH: 'C:/hostedtoolcache/windows/Java_Temurin-Hotspot_jdk/11.0.22-7/x64/

This hops from one jdk version to another one, however, this is only changed in the windows version of the workflow. Do not think it could have an impact, but just double checking in case it did.

For the record I have: openjdk version "17.0.10" 2024-01-16 in my machine.

lonewolf19991 commented 5 months ago

I have tested an intermediate commits between versions. I chose this commit based on the code changes up to that point. This commit works: https://github.com/Robosturm/Commander_Wars/tree/9324bbc66e75480f0cc6c21b99334dc6eb376ab2

I will be updating this thread with more tests, so that I can verify, at what point exactly the issue begins to happen.

lonewolf19991 commented 5 months ago

I get the following error, when compiling this commit https://github.com/Robosturm/Commander_Wars/tree/0e6b30d13554f3e5b490cac3ea08ba79d283984e : /awbwReplayReader/awbwdatatypes.cpp:236:6: error: narrowing conversion of ‘4294967295’ from ‘unsigned int’ to ‘int

I have this version: cmake version 3.24.2 and Make: GNU Make 4.3

When you compile the game on Windows do you get any warnings from that file?

lonewolf19991 commented 5 months ago

Very strange result: If I set in the ini file the autoupdate to be false, the game now runs the main menu. However I believe it might still cause other issues, I will update this thread with findings.

Robosturm commented 5 months ago

Java is only used to build the apk's. The crash happens when checking fo4 the latest version and disabling it disables everything involved with that. l'm currently sick so I'm not checking the code atm. But what would help if the downloading of an awbw map in the map editor also crashes since it uses the same qt stuff. As far as compiling goes not every commit compiles/works, but release build compile with compilers provided by github. As for the sound lib I can't help you.