Forums » General Questions » Cant Compile Stepmania

1
Ive tried like 12 times already and even went and reinstalled Lubuntu 15 twice. I followed Kyzentun's Guide to a tee and installed all the necessary dependencies and it compiles up to 99% and then I get this short error.

[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o

/home/mk9/stepmania/src/archutils/Common/PthreadHelpers.cpp:244:2: error: #error GetThreadBacktraceContext: which arch?
#error GetThreadBacktraceContext: which arch?
^
src/CMakeFiles/StepMania.dir/build.make:9333: recipe for target 'src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o' failed
make[2]: *** [src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o] Error 1
CMakeFiles/Makefile2:351: recipe for target 'src/CMakeFiles/StepMania.dir/all' failed
make[1]: *** [src/CMakeFiles/StepMania.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
make: *** [all] Error 2


I also get this error when using the "cmake -G 'Unix Makefiles' .. && cmake .." command
-- Could NOT find VA (missing:  VA_LIBRARY VA_INCLUDE_DIR)


I am mostly a Linux noob so I dont know if im missing dependencies or something. any help would be awesome :)

Last edited: 21 July 2015 11:43pm

Reply
Try searching for the libva-dev package and installing it.
< 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
Well the VA error went away but the last error that doesnt let Stepmania compile is still there

[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o

/home/mk9/stepmania/src/archutils/Common/PthreadHelpers.cpp:244:2: error: #error GetThreadBacktraceContext: which arch?
#error GetThreadBacktraceContext: which arch?
^
src/CMakeFiles/StepMania.dir/build.make:9356: recipe for target 'src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o' failed
make[2]: *** [src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o] Error 1
CMakeFiles/Makefile2:388: recipe for target 'src/CMakeFiles/StepMania.dir/all' failed
make[1]: *** [src/CMakeFiles/StepMania.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
make: *** [all] Error 2


any ideas?
Reply
It seems like the cmake code didn't set things properly on 32-bit, and nobody noticed until now. Pull from github and try again.
https://github.com/stepmania/stepmania/commit/fc3b5eed67f13f0539f3737c31847a3177ad9856
< 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
Every thing works now!!! Thank you Soooooooooooo Very much!! Ive been trying to compile for like a week and bcause of this ordeal ive learned linux much more intimately and i kinda like it :)
Anyways Thank You ;)
Reply
the current source release for 5.0.10 still has this bug. Line 298 of src/CMakeLists.txt should be as follows:

elseif(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "i686")


it looks like it was fixed in the current source tree, though.

Last edited: 12 January 2016 5:29pm

Reply
I broke up the if-else chain on a pull request for you to experiment with. https://github.com/stepmania/stepmania/pull/985

As far as the git errors go...is git on your path? Is the source code in a git repository? Is there a .git folder in the root of the project?
Reply
CMAKE_SYSTEM_PROCESSOR simply does a 'uname -p' - on 32-bit systems, it returns i686. I don't think it will ever return x86. In fact, you might confuse the fuzzy logic of the MATCH because it's a partial to x86_64.
Reply