Forums » StepMania Releases » Installing SM5 on Linux

So I got it working. I needed to install the libglew-dev. Thanks a bunch Kyzentun for all the help.

You made some geeks who were hoping for Stepmania at our room party at the con Covergence very happy.
Reply
If I'd known you were at a convention, I would have told you to get on IRC so I could respond faster. #stepmania-devs on irc.freenode.net is where the devs hang out.
I take Stepmania to a convention myself, and it's very frustrating to have problems at the event and have to spend hours poking trying to fix it while the rest of the video game room is in full swing.
< 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
Hey Kyzentun.

I'm new to Linux. I used it a long time ago, and never really compiled anything successfully. I don't really understand this that well. Hopefully you can help me change that.

I'm running Lubuntu right now, and cloned the Stepmania folder as directed. That part is fine. My issue arises when I get to the step of running the cmake generator utility.


cmake -G 'Unix Makefiles' .. && cmake ..

GTK2 was not found on your system. There will be no loading window.
-- Found PCRE: /usr/include
-- Found BZip2: /usr/lib/i386-linux-gnu/libbz2.so (found version "1.0.6")
-- Looking for BZ2_bzCompressInit in /usr/lib/i386-linux-gnu/libbz2.so
-- Looking for BZ2_bzCompressInit in /usr/lib/i386-linux-gnu/libbz2.so - found
-- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
CMake Error at StepmaniaCore.cmake:154 (message):
zlib support required.
Call Stack (most recent call first):
CMakeLists.txt:5 (include)


-- Configuring incomplete, errors occurred!
See also "/home/shan/stepmania/Build/CMakeFiles/CMakeOutput.log".


I've gone into my package manager, and have found versions of the missing packages or installed ones I think it is asking for, but I still get this error. I'm wondering if Lubuntu is missing these by default, since I'm running Lubuntu clean right now.

Any help at all is appreciated. I'll keep fiddling around till then. Also, I'm doing this because my cobalt flux was having issues connecting on Windows 7 64 bit, so installed Lubuntu 32 bit on the same laptop. Was this the right move?

Thanks guys.
Reply
You're missing the zlib and gtk 2.0 packages. You need the versions that have "-dev" on the end of the name, or say that they have the development headers in the description.
< 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, I figured that out soon after I posted my question. Started looking for anything that had the names of the programs the generator couldn't find.

Did sudo make install after compiling and got this right at 99%. The first few lines are the program installing.


[ 98%] Building CXX object src/CMakeFiles/StepMania.dir/archutils/Unix/SpecialDirs.cpp.o
[ 98%] Building CXX object src/CMakeFiles/StepMania.dir/archutils/Unix/StackCheck.cpp.o
[ 98%] Building CXX object src/CMakeFiles/StepMania.dir/archutils/Unix/X11Helper.cpp.o
[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o
/home/shan/stepmania/src/archutils/Common/PthreadHelpers.cpp:244:2: error: #error GetThreadBacktraceContext: which arch?
#error GetThreadBacktraceContext: which arch?
^
make[2]: *** [src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/StepMania.dir/all] Error 2
make: *** [all] Error 2
Reply
That looks like it didn't compile successfully. Did it create a stepmania executable in the stepmania folder?
If it made an executable, just run that and don't worry about the make install step.

If it didn't make an executable, then it didn't build successfully. At a guess, you might be missing the libc6-dev package, or the libpthread-stubs0-dev package.
< 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
No executable in the Stepmania folder, and my package manager lists libc6-dev and libpthread-stubs0-dev as installed. Ill reinstall them and try again, but I'm not sure what else I can do if that doesn't work.

---Okay, so I reinstalled some packages and this got spit out on my terminal.

Building CXX object src/CMakeFiles/StepMania.dir/archutils/Unix/BacktraceNames.cpp.o

Building CXX object src/CMakeFiles/StepMania.dir/archutils/Unix/CrashHandlerInternal.cpp.o
Building CXX object src/CMakeFiles/StepMania.dir/IniFile.cpp.o
[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/MsdFile.cpp.o
/home/shan/stepmania/src/archutils/Unix/BacktraceNames.cpp:453:2: warning: #warning Undefined BACKTRACE_LOOKUP_METHOD_* [-Wcpp]
#warning Undefined BACKTRACE_LOOKUP_METHOD_*
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:391:2: error: #error
#error
^
/home/shan/stepmania/src/archutils/Common/PthreadHelpers.cpp:244:2: error: #error GetThreadBacktraceContext: which arch?
#error GetThreadBacktraceContext: which arch?
^
[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/XmlFile.cpp.o
[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/XmlToLua.cpp.o
[ 99%] Building CXX object src/CMakeFiles/StepMania.dir/XmlFileUtil.cpp.o
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp: In function ‘void do_backtrace(const void**, size_t, const BacktraceContext*)’:
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:307:37: error: ‘const struct BacktraceContext’ has no member named ‘sp’
g_StackBlock1 = find_address( ctx->sp, g_ReadableBegin, g_ReadableEnd );
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:314:25: error: ‘const struct BacktraceContext’ has no member named ‘ip’
if( i < size-1 && ctx->ip ) // -1 for NULL
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:315:19: error: ‘const struct BacktraceContext’ has no member named ‘ip’
buf[i++] = ctx->ip;
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:321:22: error: ‘const struct BacktraceContext’ has no member named ‘sp’
if( IsOnStack( ctx->sp ) )
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:323:41: error: ‘const struct BacktraceContext’ has no member named ‘sp’
const void *p = ((const void **) ctx->sp)[0];
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:342:48: error: ‘const struct BacktraceContext’ has no member named ‘sp’
const StackFrame *frame = (StackFrame *) ctx->sp;
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp: In function ‘void GetBacktrace(const void**, size_t, const BacktraceContext*)’:
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:403:14: error: ‘struct BacktraceContext’ has no member named ‘ip’
CurrentCtx.ip = NULL;
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:404:14: error: ‘struct BacktraceContext’ has no member named ‘bp’
CurrentCtx.bp = __builtin_frame_address(0);
^
/home/shan/stepmania/src/archutils/Unix/Backtrace.cpp:405:14: error: ‘struct BacktraceContext’ has no member named ‘sp’
CurrentCtx.sp = __builtin_frame_address(0);
^
[ 99%] make[2]: *** [src/CMakeFiles/StepMania.dir/archutils/Unix/Backtrace.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
Building CXX object src/CMakeFiles/StepMania.dir/Main.cpp.o
make[2]: *** [src/CMakeFiles/StepMania.dir/archutils/Common/PthreadHelpers.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/StepMania.dir/all] Error 2
make: *** [all] Error 2

Last edited: 15 July 2015 11:45am

Reply
There's got to be some obscure dependency that you're missing. I have no clue what is missing.
Guess it's time to give up and go back to windows. A connection problem seems more likely to be caused by faulty hardware than software.
< 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