Skip to main content

News

  • The forums have now switched to ElkArte, an SMF fork which is more modern and maintained better!

Topic: Linux install instructions (Read 5600 times) previous topic - next topic

  • Flying Jester
  • [*]
  • Verified
  • TurboSphere Developer
Re: Linux install instructions
Reply #15
The editor does not work on Linux. Or if it does, you'd need to hack the sconstruct files and get an ancient version of WxWidgets (back when it was called WxWindows...and maybe didn't even exist for Linux).

I've seen that error before. I'll post the solution in a bit, I need to dig it out.

EDIT: I hate to ask, but are you using my branch of Sphere? The fix for that is already in the source. Or at least, the change that fixed it for me. The bitfield declarations are supposed to align and compact the struct to make it exactly 30 bytes.

If you are using my branch, what version of the GCC are you using?
  • Last Edit: March 13, 2014, 03:09:25 am by Flying Jester

Re: Linux install instructions
Reply #16
I figured it out. I had added in #include <cstring> instead of replacing <string> earlier
now getting this error. I remember hearing something about startup not working anyway. so I'm wondering if this is normal.

Code: [Select]
Game: "startup"
Parameters: ""
Segmentation fault (core dumped)


And I totally forgot about the no editor thing. I'm dabbling with the idea of writing one, now. But that may just be lack-of-sleep-crazy thoughts. Thanks for the help so far, I hope I haven't been too annoying.
  • Last Edit: March 13, 2014, 06:54:41 pm by pancakes4ever

  • Flying Jester
  • [*]
  • Verified
  • TurboSphere Developer
Re: Linux install instructions
Reply #17
Try this, and tell me what the output is:
Code: [Select]
ldd ./sphere


Also, you may need to run config and select SDL32 as the graphics backend. The Sphere GL backend is a little shaky on Linux. If it's the GL backend that is causing this, I have an idea of how to fix it.

And if you don't have it, this might be a good time to install valgrind.

Re: Linux install instructions
Reply #18
Code: [Select]

ldd ./engine
linux-vdso.so.1 =>  (0x00007fff533fe000)
libaudiere-1.9.4.so => /usr/local/lib/libaudiere-1.9.4.so (0x00007f69643f9000)
libcorona-1.0.2.so => /usr/local/lib/libcorona-1.0.2.so (0x00007f69641e7000)
libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f6963f96000)
libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f6963d6e000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f6963b57000)
libmng.so.1 => /usr/lib/x86_64-linux-gnu/libmng.so.1 (0x00007f69638ce000)
libunix.so => /usr/local/lib/libunix.so (0x00007f69636a4000)
libjs.so => /usr/local/lib/libjs.so (0x00007f69633d0000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f69630cf000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6962dd3000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f6962bbd000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f69627fc000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f69625df000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f69623d7000)
liblcms.so.1 => /usr/lib/x86_64-linux-gnu/liblcms.so.1 (0x00007f696219f000)
libSDL-1.2.so.0 => /usr/lib/x86_64-linux-gnu/libSDL-1.2.so.0 (0x00007f6961f06000)
/lib64/ld-linux-x86-64.so.2 (0x00007f696465b000)
libasound.so.2 => /usr/lib/x86_64-linux-gnu/libasound.so.2 (0x00007f6961c18000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6961a14000)
libpulse-simple.so.0 => /usr/lib/x86_64-linux-gnu/libpulse-simple.so.0 (0x00007f6961810000)
libpulse.so.0 => /usr/lib/x86_64-linux-gnu/libpulse.so.0 (0x00007f69615c7000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f6961292000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f6961081000)
libcaca.so.0 => /usr/lib/x86_64-linux-gnu/libcaca.so.0 (0x00007f6960db5000)
libpulsecommon-1.1.so => /usr/lib/x86_64-linux-gnu/libpulsecommon-1.1.so (0x00007f6960b57000)
libjson.so.0 => /usr/lib/x86_64-linux-gnu/libjson.so.0 (0x00007f696094e000)
libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f696070a000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f69604ec000)
libslang.so.2 => /lib/x86_64-linux-gnu/libslang.so.2 (0x00007f696017a000)
libncursesw.so.5 => /lib/x86_64-linux-gnu/libncursesw.so.5 (0x00007f695ff4d000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f695fd26000)
libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007f695fb1c000)
libsndfile.so.1 => /usr/lib/x86_64-linux-gnu/libsndfile.so.1 (0x00007f695f8b5000)
libasyncns.so.0 => /usr/lib/x86_64-linux-gnu/libasyncns.so.0 (0x00007f695f6af000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f695f4ab000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f695f2a5000)
libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007f695f08b000)
libFLAC.so.8 => /usr/lib/x86_64-linux-gnu/libFLAC.so.8 (0x00007f695ee40000)
libvorbisenc.so.2 => /usr/lib/x86_64-linux-gnu/libvorbisenc.so.2 (0x00007f695e971000)
libvorbis.so.0 => /usr/lib/x86_64-linux-gnu/libvorbis.so.0 (0x00007f695e745000)
libogg.so.0 => /usr/lib/x86_64-linux-gnu/libogg.so.0 (0x00007f695e53d000)
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f695e321000)

  • Flying Jester
  • [*]
  • Verified
  • TurboSphere Developer
Re: Linux install instructions
Reply #19
OK, that all looks good.

Did you try changing the graphics backend using config?

Could you install Valgrind, and then what does
Code: [Select]
valgrind ./sphere
look like? It should generate a stacktrace on segfaults.

Re: Linux install instructions
Reply #20
I'm not at my computer and this may be a stupid observation. But I don't remember seeing a sphere executable in the biuld.

  • Flying Jester
  • [*]
  • Verified
  • TurboSphere Developer
Re: Linux install instructions
Reply #21
You're right, it's called engine. My mistake!

Re: Linux install instructions
Reply #22
What flavor is everyone using btw? I gonna test out fedora this weekend for fun?

  • Flying Jester
  • [*]
  • Verified
  • TurboSphere Developer
Re: Linux install instructions
Reply #23
I'm using Gentoo right now, but I have Arch on this machine and another computer with Debian, Fedora, and Lubuntu.

I've successfully compiled Sphere with Fedora, Gentoo, and Arch so far. I've never tried it on a Debian or Ubuntu based distro.

Did you try using Valgrind? That would help tell us where and why the engine is crashing. I'd hope this is the same problem DaVince is having (looks the same so far), so we could finally fix all known Linux-specific issues with Sphere.

Re: Linux install instructions
Reply #24
Right will do. Sorry for the lag, I deleted my windows 8.1 partition to install fedora and found the bios/uefi thing no longer likes my hd. Windows has somehow found a way terrorize me even after I've wiped the os. Anyway once I deal with that I'll copy the valgrind output.

  • Radnen
  • [*][*][*][*][*]
  • Senior Staff
  • Wise Warrior
Re: Linux install instructions
Reply #25

Windows has somehow found a way terrorize me even after I've wiped the os.


Hahahahaha, omg I died laughing. :P
If you use code to help you code you can use less code to code. Also, I have approximate knowledge of many things.

Sphere-sfml here
Sphere Studio editor here

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Linux install instructions
Reply #26

Right will do. Sorry for the lag, I deleted my windows 8.1 partition to install fedora and found the bios/uefi thing no longer likes my hd. Windows has somehow found a way terrorize me even after I've wiped the os. Anyway once I deal with that I'll copy the valgrind output.


If you're not going to use Win8+ at all, you'll have to go into the BIOS settings and enable legacy BIOS.  The setting has different names on different boards but the gist is that you have to disable UEFI.
miniSphere 4.8.3 - Cell compiler - SSj debugger
Forum Thread | GitHub Repo

  • Flying Jester
  • [*]
  • Verified
  • TurboSphere Developer
Re: Linux install instructions
Reply #27
It doesn't disable UEFI. It just makes UEFI pretend to be BIOS.

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Linux install instructions
Reply #28

It doesn't disable UEFI. It just makes UEFI pretend to be BIOS.


Well if you want to get technical about it, yeah.  In practice the effect is the same.
miniSphere 4.8.3 - Cell compiler - SSj debugger
Forum Thread | GitHub Repo

Re: Linux install instructions
Reply #29
Update: so apparently when in rains it pours. The os issues kept piling up to a point at which writing zeroes became too desirable of an option. From there I'll reinstall lubuntu(although for the most part I'm going to move on to fedora), and recreate what I had before.