Porting my game to linux. what's a recommended linux distribution?

JDE wrote:> On 1/16/07, Andreas Schiffler wrote:

[snip] and you have to maintain only one codebase

Thought the whole idea behind SDL was to have a piece of software that
could run on pretty much any OS any hardware with very little
modifications.


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

i thought that too. i am still working on my first sdl app and test it
on different operation systems and cpus as i go. make the game or
application cross platform from the very beginning.

matt

Wow. Just… wow. I can’t believe you just encouraged the (mis)use of
Wine on the mailing list of a cross-platform development library. Way
to miss the point.On 1/16/07, Andreas Schiffler wrote:

Andre,

diversity seems to be the price for the freedom linux gives…

There is even more diversity - maybe just stick with your win32 code!
While I am not advocating to drop your Linux development aspirations,
you might want to simply make sure your EXE runs with Wine
(http://www.winehq.com/).

If performance is adequate, Linux users can just “wine
your_super_game.exe” and start playing … and you have to maintain only
one codebase and just check from time to time if a new builds still runs
on the emulator. Google was taking that route for some of their apps …
and the NSIS installer for example runs just fine on Wine to get the
game installed into someones ~/.wine/drive_c folder.

  • SR

what a horrible idea … please dont give out this advice anymore
-mike
-------------- next part --------------
A non-text attachment was scrubbed…
Name: not available
Type: application/pgp-signature
Size: 827 bytes
Desc: not available
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20070116/c4b4e8c8/attachment.pgpOn Tuesday 16 January 2007 09:16, Andreas Schiffler wrote:

Andre,

diversity seems to be the price for the freedom linux gives…

There is even more diversity - maybe just stick with your win32 code!

problem with many static linking is licensing issues (including some of the
packages you mentioned)

what i’ve seen done before with binary-only releases (and tends to work out OK
for most people) is that there is a package of just the game binary and data,
and then there’s a supplemental package that includes the relevant libraries
you used when linking (so of oggvorbis/opengl/libsdl/etc…) to be used with
just your game

of course, if you release your game in source format, none of this is a real
issue :slight_smile:
-mike
-------------- next part --------------
A non-text attachment was scrubbed…
Name: not available
Type: application/pgp-signature
Size: 827 bytes
Desc: not available
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20070116/2ffe2508/attachment.pgpOn Monday 15 January 2007 10:48, Andre Krause wrote:

if not, is any of the listed libs i use in my project not available or
compileable in static linkable form?

It took me 1 week to fully setup my three platforms (opengl 2 on
windows is not trivial) built environment from macosx.

Now I just hit the build button after selecting the target platform,
and xcode produce it without any problem.

I think that’s what SDL is for.

Regards

KuonOn Jan 16, 2007, at 10:35 PM, Simon Roby wrote:

and what does that have to do with wine ?
-mike
-------------- next part --------------
A non-text attachment was scrubbed…
Name: not available
Type: application/pgp-signature
Size: 827 bytes
Desc: not available
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20070117/aaaa64e8/attachment.pgpOn Wednesday 17 January 2007 01:19, Kuon (Nicolas Goy) wrote:

I think that’s what SDL is for.

Phew, must have stepped into something here …

People, I am in now way advocating to drop Linux or develop for windows
only or any other “horrible” idea. I’ve using Linux since kernel 1.0.9
and never looked back. I’ve written a commercial Windows app (using SDL
btw) that went to 100K desktops without a single copy of Windows around
during development (just for testing and NSIS runs). That was done BTW
by cross-compiling from Linux under a souped-up xmingw. In fact I found
this method of creating a windows app to be even better than using mingw
or cygwin on a windows box because of the better shell, editors,
tool-chain and general stability of Linux. It even works with “pmake”. :wink:

So, yes - by all means - screw wine and do a native port.

But be prepared to spend time and effort to solve the issues that come
with supporting multiple platforms … SDL does not solve them all,
just some of them. And as far as the app distribution is concerned -
either go fully open source, so someone acting as a maintainer can take
care of packaging it for the individual distros - or be prepared to
spend even more time on creating and managing your own binary
distribution system for the somewhat difficult installation target that
Linux in its various incarnations happens to be.

As for which distribution to use? My distro vote goes to Mandriva,
debian and Fedora (in that order).> On Tuesday 16 January 2007 09:16, Andreas Schiffler wrote:

Andre,

diversity seems to be the price for the freedom linux gives…

There is even more diversity - maybe just stick with your win32 code!

what a horrible idea … please dont give out this advice anymore

-------------- next part --------------
A non-text attachment was scrubbed…
Name: aschiffler.vcf
Type: text/x-vcard
Size: 135 bytes
Desc: not available
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20070117/7cd79a17/attachment.vcf

Andreas Schiffler wrote:

Phew, must have stepped into something here …

People, I am in now way advocating to drop Linux or develop for windows
only or any other “horrible” idea. I’ve using Linux since kernel 1.0.9
and never looked back. I’ve written a commercial Windows app (using SDL
btw) that went to 100K desktops without a single copy of Windows around
during development (just for testing and NSIS runs). That was done BTW
by cross-compiling from Linux under a souped-up xmingw. In fact I found
this method of creating a windows app to be even better than using mingw
or cygwin on a windows box because of the better shell, editors,
tool-chain and general stability of Linux. It even works with “pmake”. :wink:

So, yes - by all means - screw wine and do a native port.

But be prepared to spend time and effort to solve the issues that come
with supporting multiple platforms … SDL does not solve them all,
just some of them. And as far as the app distribution is concerned -
either go fully open source, so someone acting as a maintainer can take
care of packaging it for the individual distros - or be prepared to
spend even more time on creating and managing your own binary
distribution system for the somewhat difficult installation target that
Linux in its various incarnations happens to be.

As for which distribution to use? My distro vote goes to Mandriva,
debian and Fedora (in that order).

question: supposed i manage to link all libs i am using statically
(flt, ogg stuff, fltk, openAL, sdl, libcurl), can i suppose my binary to
act well on all different kinds of linux? or is it the case that the
linux distros even differ in the core level libraries (ALSA or whatever
native sound driver, openGL / mesa or what) so much, that i have no
chance making a single binary? something similiar to windows, where you
cannot thrust on having a certain directx version (thanks god i’m not
using this proprietary stuff) installed?
the reason why i’m returning to this point is that i’m still want to
have that single binary. with appended resources to the end of the exe.
of course, i still can provide sources only, but i hoped to do this as a
last resort.

another thing: you talked about making it compatible to WINE. any ideas,
what things / libs to avoid (my game was reported to crash inside WINE)
so it would run? by the way: i like your idea: first make it compatible
to wine (hopefully just removing some quirks), and then going the long
road to porting it to linux.

anyway - thanks for all your posts and suggestions.>

On Tuesday 16 January 2007 09:16, Andreas Schiffler wrote:

Andre,

diversity seems to be the price for the freedom linux gives…

There is even more diversity - maybe just stick with your win32 code!

what a horrible idea … please dont give out this advice anymore


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

Hello !

I would publish my game with two binarys,
one that has linked all the libs statically
and one that has all the libs linked dynamically.

To get right with the LGPL you need to produce a dyn. version
also and publish it with your game or publish a link
where somebody can download such a binary.

CU

the reason why i’m returning to this point is that i’m still want to
have that single binary. with appended resources to the end of the exe.

It seems, as if you are looking for something like “klik”.

http://klik.atekon.de/

German:

of course, i still can provide sources only, but i hoped to do this as a
last resort.

This should be the first “resort”. ;-)Am Donnerstag, dem 18. Jan 2007 schrieb Andre Krause:


AKFoerster

of course, i still can provide sources only, but i hoped to do this as a
last resort.

This should be the first “resort”. :wink:
ja, of course! first resort. but dont miss the “only” in my post.

a flawlessly running binary has for me highest priority.
a casual gamer just wants to download and instantly play the game… not
compile stuff, not search for the right package that is compatible with
his distro…

and – WOW! this klik seems to be exactly what i want!! thanks alot for
the link!

Andre Krause wrote:

question: supposed i manage to link all libs i am using statically
(flt, ogg stuff, fltk, openAL, sdl, libcurl), can i suppose my binary to
act well on all different kinds of linux? or is it the case that the
linux distros even differ in the core level libraries (ALSA or whatever
native sound driver, openGL / mesa or what) so much, that i have no
chance making a single binary? something similiar to windows, where you

I’m not even sure you could make one binary in windows. All those other
libraries would have to be linked dynamically. You would never think of
trying to make one single binary of a DirectX game, you have to link
dll’s dynamically.

Some descriptions of linux make it sound like a nightmare, but it really
isn’t. It was built to be able to share libraries. I don’t think you’ll
have any problems.

At any rate, it sounds like a few people here run linux. I run debian
etch myself… if you put together some test programs that run on your
distro using dynamic links, I’ll test run them on my debian pc against
my installed libraries and we’ll see if there is any difference.

Jim

Andre Krause wrote:

a flawlessly running binary has for me highest priority.
a casual gamer just wants to download and instantly play the game… not
compile stuff, not search for the right package that is compatible with
his distro…

There is nothing casual about a linux gamer. She’ll get it working if
it’s the last thing she does. :wink:

jim

Andre Krause wrote:

another thing: you talked about making it compatible to WINE. any ideas,
what things / libs to avoid (my game was reported to crash inside WINE)
so it would run? by the way: i like your idea: first make it compatible
to wine (hopefully just removing some quirks), and then going the long
road to porting it to linux.

Wine has essentially 2 parts (logically).
-The runtime that handles dynamically loading DLLs and system files.
-The DLLs themselves which are clean-room reverse engineered .
If you have a legal copy of windows, you can actually copy the DLLs
across to your wine installation which sometimes makes things run better

  • that might actually assist in finding the call/DLL where things break
    or could be integrated into an installer.
    There is a bit of info on how one can get an app that does not work
    running here: http://www.winehq.com/site/howto and of course people are
    encouraged to contributed to the project itself (see developers guide)
    to fix stuff. I’d try to do a debugging run with Wine and see where
    errors occur (logging). There are also a bunch of fiddly setting that
    one can use:
    http://www.winehq.org/site/docs/wineusr-guide/bugs#TROUBLESHOOTING

On this same topic, there was a short thread on Slashdot a few months ago:
http://ask.slashdot.org/article.pl?sid=02/10/26/0219214
and several people just said “Don’t!” to the Wine approach (the same
sentiment as was voiced here on the list). If you have commercial
interests for your Linux app, I would definitely suggest to make and
support a native version because a Wine-port is perceived as 2nd choice
for technical and other reasons. The slashdot thread has some a few good
ideas on how to cross-platform develop as well … such as SDL ;-).

-------------- next part --------------
A non-text attachment was scrubbed…
Name: aschiffler.vcf
Type: text/x-vcard
Size: 135 bytes
Desc: not available
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20070120/451bc7e6/attachment.vcf