Jump to content
SubSpace Forum Network

Recommended Posts

Posted

I've removed the digital signing and automatic update mechanism from the build, and I've successfully got Discretion building and running on Linux!

 

This was much more work than it should have been, but I learned a lot and I hope it will be worth it. There is a simplified build process for everything in the entire project, and the svn includes binaries for the dependencies for both 32-bit linux on an x86 processor and 32-bit windows on an x86 processor. If you want to use a different architecture, you'll have to build the dependencies yourself (see BUILDING.txt). I haven't had time to test the networking side of it, so only play offline has been verified as working. I will convert the server to a linux project next and then ensure clients on either platform can connect to it before proceeding further (the current server in the svn is a windows build).

 

Inside the main src directory there is a file, BUILDING.txt, which describes the new building process. Almost everything is done using Eclipse projects which are already built for you.

 

I hope some of you can try it to let me know how it goes.

 

 

Here is the svn command to get the client:

svn co https://ss-discretion.svn.sourceforge.net/svnroot/ss-discretion/client/trunk/disc_client

 

There will be a bin directory and a src directory. Follow the instructions in src/BUILDING.txt.

Posted

I've removed the digital signing and automatic update mechanism from the build, and I've successfully got Discretion building and running on Linux!

 

This was much more work than it should have been, but I learned a lot and I hope it will be worth it. There is a simplified build process for everything in the entire project, and the svn includes binaries for the dependencies for both 32-bit linux on an x86 processor and 32-bit windows on an x86 processor. If you want to use a different architecture, you'll have to build the dependencies yourself (see BUILDING.txt). I haven't had time to test the networking side of it, so only play offline has been verified as working. I will convert the server to a linux project next and then ensure clients on either platform can connect to it before proceeding further (the current server in the svn is a windows build).

 

Inside the main src directory there is a file, BUILDING.txt, which describes the new building process. Almost everything is done using Eclipse projects which are already built for you.

 

I hope some of you can try it to let me know how it goes.

 

 

Here is the svn command to get the client:

svn co https://ss-discretion.svn.sourceforge.net/svnroot/ss-discretion/client/trunk/disc_client

 

There will be a bin directory and a src directory. Follow the instructions in src/BUILDING.txt.

 

Can't this be simplified a bit? i.e. you give us .exe file for Ubuntu 12.04 :-)

I tried the lengthy set of installation instructions and didn't get an .exe file in the bin directory.

Posted
well, if you build it, and you get no build errors, you get a Discretion.exe somewhere... if it's not in bin, it ended up somewhere else. If it's nowhere, the project didn't build (or link) properly
Posted

Read the building.txt, and seems it would be Discretion.exe, my bad.

 

Do you get any errors when compiling? As Samapico said, either for some odd reason it ended up somewhere else or it didn't compile correctly.

Posted (edited)

Read the building.txt, and seems it would be Discretion.exe, my bad.

 

Do you get any errors when compiling? As Samapico said, either for some odd reason it ended up somewhere else or it didn't compile correctly.

 

No errors, a lot of warnings though using eclipse.

 

Whatever the problem is, it seems that the steps in building.txt don't apply for Ubuntu 12.04 as written. I follow all the steps, build the project, then there is no .exe file that I can find.

 

Ubuntu 12.04 is one of the most common Linux distributions these days, so would be nice if we could have a working Continuum or Discretion for it, without having to do something like using a way old version of Wine.

Edited by Kyll
Posted

well, if you build it, and you get no build errors, you get a Discretion.exe somewhere... if it's not in bin, it ended up somewhere else. If it's nowhere, the project didn't build (or link) properly

 

There was a Discretion.exe somewhere actually. I used: find . -name "*.exe*" -print in the build directories and there was a Discretion.exe not in bin as per the building.txt file but under bin/modules or something weird like that. Then I tried to run it and that didn't work either.

 

Whatever the case is, I don't think the steps were tested on Ubuntu 12.04 yet, cause I followed all the steps one by one and don't get a working exe.

 

Also I am using Wine 1.5-10 if that makes a difference.

Posted

The building process has only been tested under Ubuntu for linux, so it should work. I'll be happy to get you a linux binary, however in exchange let's figure out what's going wrong with the current building process on your setup.

 

1. You mentioned that building on Eclipse gives you some warnings. Are those warnings with the compilation process, or warnings that Eclipse is generating? Can you paste the warnings here?

 

2. You said there was a Discretion.exe generated, but not in the right place. Could you exactly say where it's being generated (you sounded unsure in the post). Is it Discretion.exe and not FrontEnd.exe or in_game.exe?

 

Also, this will generate a native linux executable, so you shouldn't need to use wine. The project that generates Discretion.exe is 'launcher', so it would be useful to get the console output of the build process for that one in particular.

 

Thanks! (I'll get you a binary in a little bit).

Posted

Yes, as mentioned in the post, I haven't testing the networking in the Linux version. Once that's tested I'll get a permanent server up. If you want, you can login as single player and use the ?cb command to setup the SSC chat bridge, so you can chat with people on the SSC servers.

 

Any update on my questions on the compilation process?

  • 5 months later...
Posted (edited)

hello!

i tried to compile it on my ubuntu 12.04 but i failed.. it was kind of complicated to be needing Eclipse for that as i dont know the ropes in there.

i tried to follow your instructions linked to your site and the instructions .txt but there seem diffrences in the new version of Eclipse.

also the link to Disc_svn.wmv seems to be broken.

 

i compiled others before with just a few commands like ./configure , make , checkinstall

please help the non programmers through this.. i really wish to play(test) this! ..in the past i liked to play Continuum when i was still on windows

 

cheers!

Edited by Newk
Posted (edited)

okay little more explicit error report.. Discretion.exe got build in ../bin/Modules/FrontEnd/

 

when executed from commandline it states:

err:module:import_dll Library libaedGUI-0.1.8a-bak.dll (which is needed by L"Z:\\home\\newk\\disc_client\\bin\\Discretion.exe") not found
err:module:import_dll Library SDL.dll (which is needed by L"Z:\\home\\newk\\disc_client\\bin\\Discretion.exe") not found
err:module:import_dll Library SDL_image.dll (which is needed by L"Z:\\home\\newk\\disc_client\\bin\\Discretion.exe") not found
err:module:import_dll Library SDL_net.dll (which is needed by L"Z:\\home\\newk\\disc_client\\bin\\Discretion.exe") not found
err:module:import_dll Library zlib1.dll (which is needed by L"Z:\\home\\newk\\disc_client\\bin\\Discretion.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\newk\\disc_client\\bin\\Discretion.exe" failed, status c0000135

 

(i copied the .exe to bin)

Edited by Newk
Posted

Well it seems to be a dependency problem. When you build it's strange that the .exe got put into  ../bin/Modules/FrontEnd/

 

Is there a project to build  libaedGUI-0.1.8a-bak ? Does it build it? What version of eclipse are you using?

Posted

just tried the steps again:

 

when downloading from svn i get the warning:

WARNING: gnome-keyring:: couldn't connect to: /tmp/keyring-EtG0hO/pkcs11: No such file or directory

 

as a precaution i wanted to set all permissions of the disc_client directory.. then i noticed it said there where allot of symlinks in there.. dunno if that is allright

 

in BUILDING.txt at linux step 4.3 it says to set it to c/c++ perspective but things that are listed in my Eclipse are:

- CVS repository exploring

- Debug

- Java

- Java browsing

- Java type hierarchy

- plugin development

- resource (default)

- team synchronizing

 

so in the next step 4.4 it says after selecting the relevant projects to go in the menu to Project -> Build Configurations -> Set Active

this option Build Configurations is not there, just options like Build, Build project, Build working set and Properties and a few others

 

when selecting Build all there i dont think its heavily building something... but there is a Discretion.exe in /disc_client/bin/Modules/FrontEnd

wich i need to give an executable flag in order to be able to run it... and it gives me the error i stated in a post before

Posted

just checked my repositories and saw the package eclipse-cdt is not installed.. turns out you need that to get the c/c++ perspective..

better put that in your BUILDING.txt

Posted (edited)

now after it does compile and gives me a Discretion.exe in /disc_client/bin/ i get one warning:


Description                                                                                                                                                                Resource                        Path Location    Type
Invalid project path: Include path not found (/home/newk/disc_client/src/deps/freetype-2.3.5/include).    aedGUI-0.1.8a-bak        pathentry           Path Entry Problem
 

it now starts the Discretion menu

when i try to enter a game it gets stuck on a black screen

giving an error in CLI: Net.cpp line 558, drivel: ignoring 6 packet types

 

need to close it by breaking on the CLI (ctrl+alt+z) and typing: killall -9 in_game.exe

 

a bit much that i posted but i hope it helps bugfixing

cheers!

Edited by Newk
  • 1 month later...
Posted

still stranded at trying to get it running on linux, please help so i can test the game!

 

on a sidenote, i just got a Raspberry Pi (512mb version), after i get this running on a normal desktop version of linux i could test this on Raspbian too

  • 2 weeks later...
Posted

Hey sorry for ignoring you for this long. I will update BUILD.txt based on your comments.

 

It sounds like you're making progress. Which zone did you try to enter by the way? Since there's no servers running, you'll probably want to try "practice offline" or something to that effect. The drivel message is normal, you can ignore it. Try pressing ESC if you need to exit (it should bring up a menu).

Posted

Newk I found a bug which might be causing what you see. There was an issue with the main sleep loop where, if the timing works out right, it could enter a black screen. I'll fix it in the next few days and push a new version. Thanks for making me investigate.

Posted

Newk, I just fixed some bugs based on your feedback (and just ones I ran into along the way) and made the build process more in line with standard development practices for Linux. I tested it on a fresh install of Ubuntu in a virtual machine and everything seems to work. Could you try the new process? Start with downloading the source code from the Mercurial repository:

 

 

hg clone http://hg.code.sf.net/p/ss-discretion/client ss-discretion-client

 

 

After it downloads, proceed by reading and following the instructions in ss-discretion-client/src/BUILDING.txt

 
let me know if there are any more issues or if it works

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...