Page MenuHomeSolus

Borderlands 2 doesn't want to start.
Closed, ResolvedPublic

Description

At Arch for example, i switched to native runtime to run the game, but here it doesn't work with native or steam's runtime :/

Logs

Event Timeline

smt added a subscriber: smt.Jan 6 2019, 10:44 PM

I have the same thing too, I found online somewhere that

-nostartupmovies -nomovies

will fix it as a temporary workaround, which has fixed it for me, but would be nice to have a 'real' fix

@smt Now it works, thank you very much!

Jacalz added a subscriber: Jacalz.Jan 7 2019, 2:13 PM
This comment was removed by JoshStrobl.
CGDoctor8 added a subscriber: CGDoctor8.EditedJan 10 2019, 10:36 PM

This issue also effects Civ V and dose not discriminate if you have LSI on or off

Someone on the Solus reddit found the problem https://www.reddit.com/r/SolusProject/comments/aalfe0/borderlands_2_and_presequel_crashes_with_seg/

the issue seems to be openal-soft update 7
I can confirm the issue is resolved if you manually install openal-soft-1.18.2-6-1-x86_64.eopkg and openal-soft-32bit-1.18.2-6-1-x86_64.eopkg

Jacalz added a comment.EditedJan 10 2019, 10:55 PM

Will have a look at updating openal-soft to 1.19.1 tomorrow to see if that fixes it, I sure hope so...

EDIT: Looks like arch Linux fixed it by doing -mstackrealign, see here

This comment was removed by Jacalz.
yaomtc added a subscriber: yaomtc.Jan 20 2019, 12:56 AM
DataDrake triaged this task as Normal priority.Jan 20 2019, 1:36 PM

I have successfully managed to track down the issue behind this and it seems that the GitHub tarballs are borked, will have a revision up shortly 🙂

Jacalz claimed this task.Feb 1 2019, 6:24 PM

Any update on this ? 🙂

Yeah, I have a differential revision open D5163, but it hasn't been merged yet. @Tzigamm

Sorry! I'm trying to get this in today. It has been pending because it requires a rebuild of everything using openal

aleksvor reopened this task as Open.Apr 6 2019, 9:32 AM
aleksvor added a subscriber: aleksvor.

Seems that issues with Aspyr games aren't resolved still. Borderlands 2 and Civ 5 still segfault on my system, but with different backtraces than before.

Backtrace for Civ 5:

Thread 19 "Civ5XP" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 15361]
0xe03c2cd4 in ?? () from /usr/lib32/libasound.so.2
(gdb) backtrace
#0  0xe03c2cd4 in ?? () from /usr/lib32/libasound.so.2
#1  0xe0403314 in ?? () from /usr/lib32/libasound.so.2
#2  0xe03b8f66 in snd_pcm_hw_params_any () from /usr/lib32/libasound.so.2
#3  0xf774fda7 in ?? () from /usr/lib32/libopenal.so.1
#4  0xf772531e in ?? () from /usr/lib32/libopenal.so.1
#5  0xf7726ddf in alcCreateContext () from /usr/lib32/libopenal.so.1
#6  0x09126f4a in YUV12 ()
#7  0x091264a2 in YUV12 ()
#8  0x09113bee in check_for_pending_io ()
#9  0x09114188 in BinkOpen ()
#10 0x085f7553 in ASL::PlayBinkMovieGL(char const*, float, unsigned int, unsigned int, bool*) ()
#11 0x0884c26c in PlayMovieState::Begin() ()
#12 0x086e0fc3 in Civ5App::PlayOpeningMovie() ()
#13 0x086e1c46 in Civ5App::Init(char const*) ()
#14 0x0865b3ed in WinMain ()
#15 0x085f5487 in ?? ()
#16 0x085d8e3e in ThreadHANDLE::ThreadProc(void*) ()
#17 0xf7b4f149 in ?? () from /usr/lib32/libpthread.so.0
#18 0xf7984256 in clone () from /usr/lib32/libc.so.6

Backtrace for Borderlands 2:

Thread 1 "Borderlands2" received signal SIGSEGV, Segmentation fault.
0xc6544cd4 in ?? () from /usr/lib32/libasound.so.2
(gdb) backtrace
#0  0xc6544cd4 in ?? () from /usr/lib32/libasound.so.2
#1  0xc6585314 in ?? () from /usr/lib32/libasound.so.2
#2  0xc653af66 in snd_pcm_hw_params_any () from /usr/lib32/libasound.so.2
#3  0xf73fdda7 in ?? () from /usr/lib32/libopenal.so.1
#4  0xf73d331e in ?? () from /usr/lib32/libopenal.so.1
#5  0xf73d4ddf in alcCreateContext () from /usr/lib32/libopenal.so.1
#6  0x094d4c62 in ?? ()
#7  0x094d4321 in ?? ()
#8  0x0995514e in ?? ()
#9  0x099556e8 in ?? ()
#10 0x08241875 in ?? ()
#11 0x08241bac in ?? ()
#12 0x08240527 in ?? ()
#13 0x0824013c in ?? ()
#14 0x08240d98 in ?? ()
#15 0x08705777 in ?? ()
#16 0x08dbcf5b in ?? ()
#17 0x0902bfad in ?? ()
#18 0x0902587d in ?? ()
#19 0x09025a57 in ?? ()
#20 0x09025c84 in ?? ()
#21 0x093af93e in ?? ()
#22 0x080ee0a6 in ?? ()
#23 0xf77aa781 in __libc_start_main () from /usr/lib32/libc.so.6
#24 0x098408fd in ?? ()

So, there is no segfault in openal-soft now, but there is one in alsa-lib :/

@aleksvor can you install alsa-lib-dbginfo and update the stacktrace please? thank you.

@DataDrake here you are.

Civ 5:

Thread 19 "Civ5XP" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 11486]
snd1_pcm_hw_refine_soft (pcm=<optimized out>, params=<optimized out>) at pcm_params.c:2109
2109	pcm_params.c: Нет такого файла или каталога.
(gdb) bt
#0  snd1_pcm_hw_refine_soft (pcm=<optimized out>, params=<optimized out>) at pcm_params.c:2109
#1  snd1_pcm_hw_refine_soft (pcm=0xe0748890, params=0xe0748bd0) at pcm_params.c:2071
#2  0xe0678314 in snd_pcm_ioplug_hw_refine (pcm=0xe0748890, params=0xe0748bd0) at pcm_ioplug.c:307
#3  0xe062df66 in snd_pcm_hw_params_any (pcm=0xe0748890, params=0xe0748bd0) at pcm.c:3728
#4  0xf774fda7 in ALCplaybackAlsa_reset (self=0xe3624bb0, self=0xe3624bb0) at ../Alc/backends/alsa.c:766
#5  ALCplaybackAlsa_ALCbackend_reset (obj=0xe3624bb0) at ../Alc/backends/alsa.c:461
#6  0xf772531e in UpdateDeviceParams (device=<optimized out>, attrList=attrList@entry=0x0) at ../Alc/ALc.c:2051
#7  0xf7726ddf in alcCreateContext (device=<optimized out>, attrList=<optimized out>) at ../Alc/ALc.c:3813
#8  0x09126f4a in YUV12 ()
#9  0x091264a2 in YUV12 ()
#10 0x09113bee in check_for_pending_io ()
#11 0x09114188 in BinkOpen ()
#12 0x085f7553 in ASL::PlayBinkMovieGL(char const*, float, unsigned int, unsigned int, bool*) ()
#13 0x0884c26c in PlayMovieState::Begin() ()
#14 0x086e0fc3 in Civ5App::PlayOpeningMovie() ()
#15 0x086e1c46 in Civ5App::Init(char const*) ()
#16 0x0865b3ed in WinMain ()
#17 0x085f5487 in ?? ()
#18 0x085d8e3e in ThreadHANDLE::ThreadProc(void*) ()
#19 0xf7b4f149 in ?? () from /usr/lib32/libpthread.so.0
#20 0xf7984256 in clone () from /usr/lib32/libc.so.6

Borderlands 2:

Thread 1 "Borderlands2" received signal SIGSEGV, Segmentation fault.
snd1_pcm_hw_refine_soft (pcm=<optimized out>, params=<optimized out>) at pcm_params.c:2109
2109	pcm_params.c: Нет такого файла или каталога.
(gdb) bt
#0  snd1_pcm_hw_refine_soft (pcm=<optimized out>, params=<optimized out>) at pcm_params.c:2109
#1  snd1_pcm_hw_refine_soft (pcm=0x1f88aa30, params=0x1f8859a0) at pcm_params.c:2071
#2  0xc6662314 in snd_pcm_ioplug_hw_refine (pcm=0x1f88aa30, params=0x1f8859a0) at pcm_ioplug.c:307
#3  0xc6617f66 in snd_pcm_hw_params_any (pcm=0x1f88aa30, params=0x1f8859a0) at pcm.c:3728
#4  0xf73fdda7 in ALCplaybackAlsa_reset (self=0x1f87c8a0, self=0x1f87c8a0) at ../Alc/backends/alsa.c:766
#5  ALCplaybackAlsa_ALCbackend_reset (obj=0x1f87c8a0) at ../Alc/backends/alsa.c:461
#6  0xf73d331e in UpdateDeviceParams (device=<optimized out>, attrList=attrList@entry=0x0) at ../Alc/ALc.c:2051
#7  0xf73d4ddf in alcCreateContext (device=<optimized out>, attrList=<optimized out>) at ../Alc/ALc.c:3813
#8  0x094d4c62 in ?? ()
#9  0x094d4321 in ?? ()
#10 0x0995514e in ?? ()
#11 0x099556e8 in ?? ()
#12 0x08241875 in ?? ()
#13 0x08241bac in ?? ()
#14 0x08240527 in ?? ()
#15 0x0824013c in ?? ()
#16 0x08240d98 in ?? ()
#17 0x08705777 in ?? ()
#18 0x08dbcf5b in ?? ()
#19 0x0902bfad in ?? ()
#20 0x0902587d in ?? ()
#21 0x09025a57 in ?? ()
#22 0x09025c84 in ?? ()
#23 0x093af93e in ?? ()
#24 0x080ee0a6 in ?? ()
#25 0xf77aa781 in __libc_start_main () from /usr/lib32/libc.so.6
#26 0x098408fd in ?? ()

Are you forcing 32-bit mode?

No. LSI uses default settings besides Unity workaround.

DataDrake closed this task as Resolved.Sep 26 2019, 3:19 AM

Borderlands 2 runs fine for me now, please re-open if you are having trouble still.

Are you still having issues with the games, @aleksvor?
I have a working patch to update openal-soft to the recently released update 1.20.0 that I will send up shortly, but testing borderlands before and after the update show the same issue for me. It just won't start :(

Are you still having issues with the games, @aleksvor?
I have a working patch to update openal-soft to the recently released update 1.20.0 that I will send up shortly, but testing borderlands before and after the update show the same issue for me. It just won't start :(

Last I checked a few weeks ago - yes, all Aspyr ports still segfault in libasound upon launch on my system. I think that we have fixed the issue in libopenal, but now there is something wrong with alsa-lib build.
However, it's puzzling that it works for other users. I wonder if it depends on audio configuration maybe?

Jacalz added a comment.Dec 2 2019, 9:12 AM

Yeah. Different audio setups might be the case...

Jacalz added a comment.Dec 2 2019, 5:54 PM

I updated alsa-lib to version 1.2.1.2 (currently at 1.1.9 in the repo) and Borderlands 2 still won't start...

It's a blind guess, but I think we can try building alsa-lib without tree-vectorize too.

See this issue. It's very old, the versions of GCC and alsa-lib in question are ancient, but the symptoms are very similar. @Jacalz maybe you could try this if you have time?

Good idea! @aleksvor. I will give it a shot today or tomorrow if I get some time over 👍

Jacalz added a comment.EditedDec 3 2019, 5:27 PM

It didn't seem to make any difference, at least for me. I also tried to force the CFLAGS to just "-O2" and then "-O0", but it made no difference.
Lastly I tried building alsa-lib with clang and there seems to be no difference in starting Borderlands 2.
I honestly don't know if I am doing something wrong here (don't know how to run the backtraces for example)...

yaomtc removed a subscriber: yaomtc.Dec 3 2019, 5:39 PM
osgyan added a subscriber: osgyan.Oct 11 2020, 5:04 AM

I am also unable to launch Borderlands 2. all other games work absolutely perfection. Any ideas on what could be the issue?

@osgyan I take it you have already tried different settings in "Linux Steam Integration"?

I tried disabling it and I still have no luck, I also disabled the Unity Games Workaround too., I do not have success. I get the below error.
: error while loading shared libraries: /usr/lib/libcrypto.so.1.0.0: wrong ELF class: ELFCLASS64

I tried steam on flatpak, and the game launches fine there, No issues observed.. I can use it with Flatpak for some time, however I am 100% sure that the performance is not as good as it would be without Flatpak.

I tried disabling it and I still have no luck,

Just to make 100% sure: Did you completely close Steam and restart it after changing settings in "Linux Steam Integration"? Otherwise it won't apply.

Yes I did close it completely and then made the changes. It is still not working, however flatpak version is there now. Want to have it working without flatpak. Please do let ne know if there is anything that can be done to fix it

I tried disabling it and I still have no luck, I also disabled the Unity Games Workaround too., I do not have success. I get the below error.
: error while loading shared libraries: /usr/lib/libcrypto.so.1.0.0: wrong ELF class: ELFCLASS64

I had this same issue and installed openssl-32bit, which gets the Borderlands 2 window to open separately, but I got the following error:

Setting breakpad minidump AppID = 49520
Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198042006726 [API loaded no]
ERROR: ld.so: object '/home/craig/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/craig/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 8768 for game ID 49520
ERROR: ld.so: object '/home/craig/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/craig/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 8791 for game ID 49520
Installing breakpad exception handler for appid(gameoverlayui)/version(20201028233457)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
[1127/091634.685818:INFO:crash_reporting.cc(270)] Crash reporting enabled for process: renderer
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
[1127/091634.823526:ERROR:frame_sink_video_capturer_impl.cc(206)] Invalid resolutions constraints: 0x0 must not be greater than 0x0; and also within media::limits.
Game removed: AppID 49520 "", ProcID 8739

then used -nostartupmovies -nomovies as a workaround.

Using -nostartupmovies -nomovies does actually make the game work. This is great, atleast I can play now.. Many thanks for this workaround.