Forums » StepMania Releases » Installing SM5 on Linux

Ok, I had to leave so tried for the last time on my laptop.
Reboot
Log in as user
$make
>Some permissions failure
Go to X (XFCE)
$make
>Same failure
sudo $make
>some other fail
Open tty2
Log in as root
$make clear
$make
Left the computer unattended
>compiled fine
I don't know what happened :s
Sorry to bother with my n00bness and thanks for your help. It's my first success compiling from source. Not my first time with linux though, since 2003 it has been a crash test.
Reply
Don't build SM5 as root. It's never necessary and will not help you in any way, and can only cause you problems. root access is not some magic wand to wave around whenever problems occur. The only time you should be using root access is when using the package manager to install packages. After installing packages, you should switch back to a normal user account before installing SM5.
You probably got permissions failures as a normal user because of your previous mistake of trying to build as root. You can clean up the mistake by switching to root, running "make distclean", and starting over from step 4 of my instructions in the first post of this thread.
< cybik> til Kyzentun fixes bugs for breakfast
--
< maxvg1> shakesoda: then why do i still play lol
<@shakesoda> because you're an ITG player. And thus, a masochist
--
<@shakesoda> Kyzentun: I think you might need to put down the meshes for a bit
Reply
Thanks @Kyzentun ... I already had the linux headers installed so I resorted to adding the following lines to src/arch/InputHandler/InputHandler_Linux_Event.h:
#ifndef BTN_TRIGGER_HAPPY1
#define BTN_TRIGGER_HAPPY1 0x2c0
#endif

#ifndef BTN_TRIGGER_HAPPY40
#define BTN_TRIGGER_HAPPY40 0x2e7
#endif

This seems to have worked since I get the stepmania executable

I however don't get "GtkModule.so" and I get the following output at the top of my Makefile output:
Reading makefiles...
Updating goal targets....
File `all' does not exist.
File `all-recursive' does not exist.
Must remake target `all-recursive'.
Making all in bundle

Could you please offer advise on how the rule for "all" should be defined.

Thanks.

Last edited: 20 July 2014 11:37am

Reply
I think it's likely that the configure step failed for some reason. If you used the exact command from my instructions, the output of configure should be in "conf.out". Check that to see if it reported any errors.
< cybik> til Kyzentun fixes bugs for breakfast
--
< maxvg1> shakesoda: then why do i still play lol
<@shakesoda> because you're an ITG player. And thus, a masochist
--
<@shakesoda> Kyzentun: I think you might need to put down the meshes for a bit
Reply
Hello,

running OpenSUSE Factory, I've hunted the dependenices down and compiling goes without a hitch.

Running the game, however is a bit of a problem:

While running the game from the command line I get quite a few GLib errors, followed by a warning that ThemePrefs.ini doesn't exist, loading ALSA fails because SetHWParams failed, so it tries to run without a Sound driver, and then the window pops up, trying to load the songs, but it hangs on that, not proceeding after a lot of waiting, and not being killed through the regular killall command.

Running the version in the repos also fails, though that crashes gracefully and creates a crash log.

EDIT: The version in the repos (ver. 4) crashes because it lacks Data/Static.ini.

Last edited: 24 August 2014 10:10am

Reply
Just to be clear, you should fetch the source from the github Stepmania repository and not the google code page. The google code source was abandoned in January and has not been updated since.
I'd have to see the Glib errors to take a guess at what's causing them.
ThemePrefs.ini and Static.ini not existing shouldn't be a problem.
If ALSA fails to load, it's probably due to something locking the sound device and preventing Stepmania from using it. Try closing anything else that might be using sound before starting Stepmania.
If you need to kill stepmania while it's loading songs, you'll have to use killall -9.
< cybik> til Kyzentun fixes bugs for breakfast
--
< maxvg1> shakesoda: then why do i still play lol
<@shakesoda> because you're an ITG player. And thus, a masochist
--
<@shakesoda> Kyzentun: I think you might need to put down the meshes for a bit
Reply
Yeah, I was compiling the wrong version, the new version seems to work fine.

Thanks for the help.
Reply
I'm on Ubuntu 14.04 amd64. I got through autogen.sh and configure, but make dies at various points with these errors:


In file included from /usr/include/x86_64-linux-gnu/sys/soundcard.h:1:0,
from arch/Sound/RageSoundDriver_OSS.cpp:14:
arch/Sound/RageSoundDriver_OSS.cpp: In member function ‘virtual RString RageSoundDriver_OSS::Init()’:
arch/Sound/RageSoundDriver_OSS.cpp:190:15: error: ‘SOUND_PCM_WRITE_RATE_is_obsolet_use_SNDCTL_DSP_SPEED_instead’ was not declared in this scope
if(ioctl(fd, SOUND_PCM_WRITE_RATE, &i) == -1 )
^



In file included from /usr/include/fcntl.h:279:0,
from tests/test_audio_readers.cpp:12:
In function ‘int open(const char*, int, ...)’,
inlined from ‘void dump_bin(const char*, const char*, int)’ at tests/test_audio_readers.cpp:40:46:
/usr/include/x86_64-linux-gnu/bits/fcntl2.h:50:26: error: call to ‘__open_missing_mode’ declared with attribute error: open with O_CREAT in second argument needs 3 arguments
__open_missing_mode ();
^



tests/test_file_errors.cpp: In function ‘void CryptoTest()’:
tests/test_file_errors.cpp:368:16: error: ‘FlushDirCache’ was not declared in this scope
FlushDirCache();
^


There are more compile errors in the test suite, but I gave up chasing them down.

Last edited: 5 September 2014 12:22am

Reply