Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

saints row 4 gdb error #238

Open
SPRATAY opened this issue Jun 1, 2019 · 11 comments
Open

saints row 4 gdb error #238

SPRATAY opened this issue Jun 1, 2019 · 11 comments

Comments

@SPRATAY
Copy link

SPRATAY commented Jun 1, 2019

sufferiney@sufferiney-pc ~/.local/share/Steam/steamapps/common/Saints Row IV $ gdb ./SaintsRow4.i386
GNU gdb (Gentoo 8.1 p1) 8.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
https://bugs.gentoo.org/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./SaintsRow4.i386...(no debugging symbols found)...done.
(gdb) ./SaintsRow4.i386
Undefined command: "". Try "help".
(gdb) run
Starting program: /home/sufferiney/.local/share/Steam/steamapps/common/Saints Row IV/SaintsRow4.i386
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0xf3fe3b40 (LWP 25820)]
[New Thread 0xf3cffb40 (LWP 25821)]
[New Thread 0xf39ffb40 (LWP 25822)]
Setting breakpad minidump AppID = 206420
Steam_SetMinidumpSteamID: Caching Steam ID: 76561198032984222 [API loaded no]
[New Thread 0xf1aeab40 (LWP 25823)]
[New Thread 0xf17ffb40 (LWP 25825)]
[New Thread 0xce5ffb40 (LWP 25826)]
[New Thread 0xce2ffb40 (LWP 25827)]
[New Thread 0xcdfffb40 (LWP 25828)]
[Thread 0xcdfffb40 (LWP 25828) exited]
[New Thread 0xcdfffb40 (LWP 25829)]
[New Thread 0xbd7feb40 (LWP 25830)]
[New Thread 0xbd5efb40 (LWP 25831)]
[New Thread 0xbd3dfb40 (LWP 25832)]
[New Thread 0xbd1cfb40 (LWP 25833)]
[New Thread 0xbcfbfb40 (LWP 25834)]
[New Thread 0xbcdafb40 (LWP 25835)]
[New Thread 0xbcb9fb40 (LWP 25836)]
[New Thread 0xbc98fb40 (LWP 25837)]
[New Thread 0xbc77fb40 (LWP 25838)]
[New Thread 0xbc39fb40 (LWP 25839)]
[New Thread 0xbc29eb40 (LWP 25840)]
[Thread 0xbc29eb40 (LWP 25840) exited]
[Thread 0xbc39fb40 (LWP 25839) exited]
[New Thread 0xbc39fb40 (LWP 25841)]
[New Thread 0xbc29eb40 (LWP 25842)]
[New Thread 0xb84fdb40 (LWP 25843)]
[New Thread 0xb818fb40 (LWP 25844)]
[New Thread 0xb808eb40 (LWP 25845)]
[New Thread 0xb78dfb40 (LWP 25846)]
[New Thread 0xb77deb40 (LWP 25847)]
[New Thread 0xb5affb40 (LWP 25848)]

Thread 29 "G.26" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb5affb40 (LWP 25848)]
0xf76ccc99 in ?? () from /lib32/libc.so.6
(gdb) list
1 /var/tmp/portage/sys-devel/gcc-8.3.0-r1/work/gcc-8.3.0/libgcc/libgcc2.c: Нет такого файла или каталога.
(gdb) quit
A debugging session is active.

Inferior 1 [process 25815] will be killed.

Quit anyway? (y or n) y

@chewi
Copy link
Collaborator

chewi commented Jun 2, 2019

I found this thread, which recently suggests that building glibc and PulseAudio (if you use it) with -mstackrealign helps on Gentoo.

@SPRATAY
Copy link
Author

SPRATAY commented Jun 3, 2019

-mstackrealign really solves the problem with the launch, and after reading about this command it seems like nothing bad if you use it globally, or am I mistaken?

@chewi
Copy link
Collaborator

chewi commented Jun 3, 2019 via email

@kopr12
Copy link

kopr12 commented Jun 3, 2019

Would be great if -mstackrealign could be applied only to x86 libs.
I don't know actually if x86_64 and x86 flags could be separated, can that be done ?

@SPRATAY
Copy link
Author

SPRATAY commented Jun 3, 2019

Would be great if -mstackrealign could be applied only to x86 libs.
I don't know actually if x86_64 and x86 flags could be separated, can that be done ?

if you find the answer write here, I would not mind compiling the necessary libs with the right commands

@kopr12
Copy link

kopr12 commented Jun 3, 2019

Would be great if -mstackrealign could be applied only to x86 libs.
I don't know actually if x86_64 and x86 flags could be separated, can that be done ?

if you find the answer write here, I would not mind compiling the necessary libs with the right commands

Well, this works :

CFLAGS="${CFLAGS}"
CXXFLAGS="${CFLAGS}"

CFLAGS_x86="${CFLAGS_x86} -mstackrealign"
CXXFLAGS_x86="{CXXFLAGS_x86} -mstackrealign"

but I don't know if it actually builds x64 without -mstackrealign or not, clueless how to test that.
It should though.

@SPRATAY
Copy link
Author

SPRATAY commented Jun 3, 2019

Would be great if -mstackrealign could be applied only to x86 libs.
I don't know actually if x86_64 and x86 flags could be separated, can that be done ?

if you find the answer write here, I would not mind compiling the necessary libs with the right commands

Well, this works : [ Ну, это работает:]

CFLAGS="${CFLAGS}"
CXXFLAGS="${CFLAGS}"

CFLAGS_x86="${CFLAGS_x86} -mstackrealign"
CXXFLAGS_x86="{CXXFLAGS_x86} -mstackrealign"

but I don't know if it actually builds x64 without -mstackrealign or not, clueless how to test that. [ но я не знаю, действительно ли он собирает x64 без -mstackrealign или нет, не зная, как это проверить.]
It should though. [ Это должно хотя.]

if you dig into the sources, there is no such flag as CFLAGS_x86 or CXXFLAGS_x86, dug into pulseaudio because you also compile it with the -mstackrealign flag

just try to rebuild pulseaudio with given flags if you find this command in the console during the assembly, there is a chance that it will work on other libraries as well 32 although I very much doubt

@chewi
Copy link
Collaborator

chewi commented Jun 3, 2019

You can indeed set CFLAGS_x86 and CXXFLAGS_x86, I was going to suggest the same thing. You won't find it in the sources, this is how Gentoo's multilib feature works.

@kopr12
Copy link

kopr12 commented Jun 3, 2019

Yeah, and like I said, I tested it and it works for sure.

@SPRATAY
Copy link
Author

SPRATAY commented Jun 3, 2019

You can indeed set CFLAGS_x86 and CXXFLAGS_x86, I was going to suggest the same thing. You won't find it in the sources, this is how Gentoo's multilib feature works.

stand, stand, and that gcc understands which ones to compile with a live command and which ones don't, and in general how it works, can be explained on the shelves, and what other commands are there for the similarity of these 2

@piedar
Copy link
Contributor

piedar commented Dec 25, 2019

Excellent, thanks for the tip! This fixed a Saints Row 2 crash for me.

/etc/portage/package.env

sys-libs/glibc stackrealign.conf

/etc/portage/env/stackrealign.conf

CFLAGS_x86="${CFLAGS_x86} -mstackrealign"
CXXFLAGS_x86="${CXXFLAGS_x86} -mstackrealign"
emerge -v1 sys-libs/glibc

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants