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

dear sdl list users,
could you recommend me a linux distribution that makes it easy to port
my game to linux?
i need a linux system that makes it as easy as possible to download and
use (preferred: in binary form) the required libraries:

  • sdl
  • fltk
  • ogg vorbis
  • opengl, glu
  • libcurl
  • vorbis, vorbisfile, ogg
  • openAL, alut

and i would prefer static versions of these libs… ( to ensure that it
will run without forcing the gamer to install all these libs… and -
yes - my game is opensource)

i remember debian (last uses 3 years ago) to have this package manager,
with whom i could install relatively easily libs and stuff. is it still
the choice No. 1 ?

This question is liable to solicit a holy war about distributions. The
truth is, most distributions are pretty much as good as another. If you
want commercial support, you probably want to go the RedHat way, if you
want fully-free, you probably want to go debian, if you want a more
user-friendly version of debian, perhaps ubuntu. However, my best
advice is, if you are not a Linux expert, find a friend who is, and use
whatever distro he or she uses. That way, when there is a problem, it
will be a matter of pride on their part to help you fix it.

Please, let’s not start the "this distro is better than that distro"
thread here. Thanks!On Mon, Jan 15, 2007 at 04:24:50PM +0100, Andre Krause wrote:

i remember debian (last uses 3 years ago) to have this package
manager, with whom i could install relatively easily libs and stuff.
is it still the choice No. 1 ?


Steaphan Greene
Lecturer, Computer Science, Binghamton University
GPG public key: http://www.cs.binghamton.edu/~sgreene/gpg.key.txt
-------------- next part --------------
A non-text attachment was scrubbed…
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: http://lists.libsdl.org/pipermail/sdl-libsdl.org/attachments/20070115/7e3e9718/attachment.pgp

Jay Vaughan wrote:

i recommend ubuntu … it has all your packages on-board, and its easy to
make a distribution package for it …

does it include also the header files for the libraries?
could you give a keyword/hint/link on how to create a “package” ?

At 16:39 +0100 15/1/07, Andre Krause wrote:

Jay Vaughan wrote:

i recommend ubuntu … it has all your packages on-board, and its easy to
make a distribution package for it …

does it include also the header files for the libraries?
could you give a keyword/hint/link on how to create a “package” ?

Its not related to SDL, so lets discuss it off-list, though I think a
few minutes with google will answer your question pretty well … the
Ubuntu community is pretty well documented …–

;

Jay Vaughan

Steaphan Greene wrote:> On Mon, Jan 15, 2007 at 04:24:50PM +0100, Andre Krause wrote:

i remember debian (last uses 3 years ago) to have this package
manager, with whom i could install relatively easily libs and stuff.
is it still the choice No. 1 ?

This question is liable to solicit a holy war about distributions. The
truth is, most distributions are pretty much as good as another. If you
want commercial support, you probably want to go the RedHat way, if you
want fully-free, you probably want to go debian, if you want a more
user-friendly version of debian, perhaps ubuntu. However, my best
advice is, if you are not a Linux expert, find a friend who is, and use
whatever distro he or she uses. That way, when there is a problem, it
will be a matter of pride on their part to help you fix it.

Please, let’s not start the "this distro is better than that distro"
thread here. Thanks!



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

of course, no flame wars.
but questions remain: is there a way to create a package (including
dynamic libs) that can be used for most / all linux distros ?

if not, is any of the listed libs i use in my project not available or
compileable in static linkable form? or - can i trust to have at least
openGL and openAL to be installed per default on any modern linux
distribution? i’m just not sure what will happen if a gamer downloads my
game and a dynamic library is missing. does he get notified what libs
are missing and are these libs eventually installed automagically?

  • can i trust to have at least
    openGL and openAL to be installed per default on any modern linux
    distribution?

Nope. I wish it were true.

i’m just not sure what will happen if a gamer downloads my
game and a dynamic library is missing. does he get notified what libs
are missing and are these libs eventually installed automagically?

Nope.

JeffOn Mon January 15 2007 07:48, Andre Krause wrote:

2007/1/15, Andre Krause :

of course, no flame wars.
but questions remain: is there a way to create a package (including
dynamic libs) that can be used for most / all linux distros ?

if not, is any of the listed libs i use in my project not available or
compileable in static linkable form? or - can i trust to have at least
openGL and openAL to be installed per default on any modern linux
distribution? i’m just not sure what will happen if a gamer downloads my
game and a dynamic library is missing. does he get notified what libs
are missing and are these libs eventually installed automagically?

You don’t have to worry about packaging. Because:

  1. there’s no universal package manager that are supported on most distros
  2. making packages for most distros (and package managers) is not very
    easy (except 2 distros which I don’t want to name because of holywar
    possibility, though they are not in Top10 yet)
  3. there often may be significant differences between libraries
    packages between different versions of the same distro
  4. there’s no point in providing (and maintaining) packages for many
    distros, you can make only one package - for distro that you use (if
    you know how to do this), other distros will make their packages by
    themselves (either official or community packages) - just provide
    sources.

As for statically linking: AFAIK you can do this with BSD/ZLIB/LGPL
licenses. Just provide sources of used LGPLed libraries.–
Roman Kyrylych (??? ???)

Jeff wrote:

  • can i trust to have at least
    openGL and openAL to be installed per default on any modern linux
    distribution?

Nope. I wish it were true.

And for openGL, some graphic boards require installing a special one if
you want 3D hardware acceleration.

And for audio, each distro and each desktop have their own ideas about
how audio should be accessed. It’s one of the purposes of SDL to give
you an API independent from the idiosyncrasies of the sound setup. So,
expecting openAL (or alsa, or oss, of esd, or artsd) is not a good
strategy, unless you’re ready to fight the rest of the system. We do
that on mission-critical, dedicated workstations. I dont think you will
for a game…

i’m just not sure what will happen if a gamer downloads my
game and a dynamic library is missing. does he get notified what libs
are missing and are these libs eventually installed automagically?

Nope.

If the game is distributed as a deb package, to a debian distro (or any
apt-based distro) then dependencides will be automatically satisfied.
But you, the developper, have to maintain the dependency list for your
app. The base distro does not do that for you.> On Mon January 15 2007 07:48, Andre Krause wrote:

Jeff


Michel Bardiaux
R&D Director
T +32 [0] 2 790 29 41
F +32 [0] 2 790 29 02
E mailto:@Michel_Bardiaux

Mediaxim NV/SA
Vorstlaan 191 Boulevard du Souverain
Brussel 1160 Bruxelles
http://www.mediaxim.com/

dear sdl list users,
could you recommend me a linux distribution that makes it easy to port
my game to linux?
i need a linux system that makes it as easy as possible to download and
use (preferred: in binary form) the required libraries:

  • sdl
  • fltk
  • ogg vorbis
  • opengl, glu
  • libcurl
  • vorbis, vorbisfile, ogg
  • openAL, alut

and i would prefer static versions of these libs… ( to ensure that it
will run without forcing the gamer to install all these libs… and -
yes - my game is opensource)

Since it is open source I would say: forget about shipping a linux binary
at all, and use source + autoconf [1] instead.

A binary package is only going to work on the linux distribution you use,
and in some cases only on the release you are using. And the distribution
I am using makes new releases 1-2 times a year!

Source + autoconf on the other hand is supported on every OS + machine
combination you can think of, even windows [2]!

True, it means that your non-windows user needs to know how to write
"./configure && make && make install" in a terminal, and how to understand
all the giberish it prints.

[1] http://www.gnu.org/software/autoconf/
[2] http://www.cygwin.com/On Mon, 15 Jan 2007, Andre Krause wrote:

Since it is open source I would say: forget about shipping a linux binary
at all, and use source + autoconf [1] instead.

A binary package is only going to work on the linux distribution you use,
and in some cases only on the release you are using. And the distribution
I am using makes new releases 1-2 times a year!

Source + autoconf on the other hand is supported on every OS + machine
combination you can think of, even windows [2]!

True, it means that your non-windows user needs to know how to write
"./configure && make && make install" in a terminal, and how to understand
all the giberish it prints.

[1] http://www.gnu.org/software/autoconf/
[2] http://www.cygwin.com/

thank you all for your informations!

seems i will go your suggestet route: first, using debian, i will try
making the game compile and run bugfree. (i will try cmake, as it seems
to be a lot easier than autoconf) then i will make a source tar ball
including game resources.

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

2007/1/15, Andre Krause :

thank you all for your informations!

seems i will go your suggestet route: first, using debian, i will try
making the game compile and run bugfree. (i will try cmake, as it seems
to be a lot easier than autoconf) then i will make a source tar ball
including game resources.

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

You may also take a look at ftjam, which is even easier than cmake :wink: (IMHO)–
Roman Kyrylych (??? ???)

Hi,

What do you wanna from one linux distro?
is it only for you compile and test? or you will distribucted your game only
with one linux distro?
Is your game open source? if it is, you only need to do one version or
public that and peple start to run your game in some distros.
if its a commercial game with closed source, is so good if you do one deb,
rpm and binary version.

Regards,

R?benOn 1/15/07, Roman Kyrylych <roman.kyrylych at gmail.com> wrote:

2007/1/15, Andre Krause :

thank you all for your informations!

seems i will go your suggestet route: first, using debian, i will try
making the game compile and run bugfree. (i will try cmake, as it seems
to be a lot easier than autoconf) then i will make a source tar ball
including game resources.

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

You may also take a look at ftjam, which is even easier than cmake :wink:
(IMHO)


Roman Kyrylych (??? ???)


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


R?ben L?cio Reis

www.rubenlr.com.br
Linux user #433535
Linux because we are freedon.

Jeff wrote:> On Mon January 15 2007 07:48, Andre Krause wrote:

i’m just not sure what will happen if a gamer downloads my
game and a dynamic library is missing. does he get notified what libs
are missing and are these libs eventually installed automagically?

Nope.

Not too long ago, I installed a new video card, and wanted to play some
opengl games. Installing the exact opengl drivers for my video card was
a bit of a challenge because I had to configure the drivers for my card.
But that is something every linux user will have to do to use their
video card. So in my opinion, if a user wants to play your game, she
probably already has the video card set up.

Typically if I try to run a program without having the necessary
libraries installed I usually get runtime errors. Most recently I
downloaded Firefox 2.0 and unzipped it and tried to run it on my laptop.
I didn’t have the libstdc++.so.5 library installed and I got runtime
errors telling me so. I installed the needed libraries using the package
installer (I use debian’s apt-get) and was immediately able to run firefox.

jim

Andre Krause wrote:

dear sdl list users,
could you recommend me a linux distribution that makes it easy to port
my game to linux?
i need a linux system that makes it as easy as possible to download and
use (preferred: in binary form) the required libraries:

  • sdl
  • fltk
  • ogg vorbis
  • opengl, glu
  • libcurl
  • vorbis, vorbisfile, ogg
  • openAL, alut

and i would prefer static versions of these libs… ( to ensure that it
will run without forcing the gamer to install all these libs… and -
yes - my game is opensource)

i remember debian (last uses 3 years ago) to have this package manager,
with whom i could install relatively easily libs and stuff. is it still
the choice No. 1 ?


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

i dont think the linux distro matters. providing one binary package
with all the dependencies is not really the way gnu/linux works. if
you want to install like that you might want to familiarize yourself
with linux more, also take a look at osx as it has both ways of
installing apps (unix/linux and the old mac way).

i would suggest working on a make file a configure script to check
dependencies. i have found autoconf to be easy but havent mastered
automake yet. get your application to work on mulitple platforms first
if it doesnt already. then from that the disto’s can make their
packages (deb, rpm, ebuild…).

i am working an nes emulator and that compiles using a small configure
script and make file on x86, amd64, g4, ps3 cell, and a mips (osx and
linux).

matt

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.

To get Wine onto Debian see http://www.winehq.com/site/download-deb

Cheers
Andy

-------------- 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/20070116/b9b1f906/attachment.vcf

2007/1/16, Andreas Schiffler :

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 …

Kidding? This is ridiculous!
Why users should run game with Windows API emulator? Just because it’s
hard to make package(s) for Linux distros?
And in case of DirectX game users will have problems, even with Cedega.
Sources are enough for distro-makers and community to make packages.
Author may provide binary packages for the distro he uses.
Also, I’m sure that good game will have few users that are able to
create binary packages for their Linux distros, and they can be made
official.–
Roman Kyrylych (??? ???)

Roman,

If performance is adequate, Linux users can just “wine
your_super_game.exe” and start playing …

Kidding? This is ridiculous!

No, why. Assuming you have an existing win32 codebase - this is probably
the easiest way.

And there are about 1500 games that do run (more or less adequately) to
prove that it can work: http://appdb.winehq.org/appbrowse.php?catId=2

As a game developer - the focus should be on making a good game. The
problems associated with supporting all the different platforms and
installation quirks only get in the way of the real task: making a fun
game. If the idea is to make an existing game playable for Linux users,
I find the “wine-route” absolutely valid. If the source code is open and
the game is good, I am sure someone else with more Linux experience WILL
make a port (and a distro inclusion is likely to follow).

Other than that, the original question asked for a “linux distribution
for SDL development”. I believe most distributions will fit … most
helpful might be the few command lines to get SDL development running on
"insert your favorite distro here". On Mandriva the following would
get you started: “urpmi SDL SDL-devel” and a “urpmi -y libSDL 2>&1 |
grep devel” shows you some of the available libs that can be installed.
How to get accelerated 3D to work is a whole different story because
every distro is handling that differently. But I believe with the
inclusion of 3D accelerated desktops in many distributions, we can
assume this will get easier and more common.

-------------- 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/20070116/533a90d8/attachment.vcf

That’s exactly why I don’t like wine that much.

Makes developers lazy.

In my case I rather dual boot. Windows exe for Windows,
Linux exe for Linux.

Just my point of view,
Paulo

Quoting Andreas Schiffler :> 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.

To get Wine onto Debian see http://www.winehq.com/site/download-deb

Cheers
Andy


This message was sent using IMP, the Internet Messaging Program.

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.On 1/16/07, Andreas Schiffler wrote:

[snip] and you have to maintain only one codebase

Roman Kyrylych wrote:

2007/1/16, Andreas Schiffler :

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 …

Kidding? This is ridiculous!
Why users should run game with Windows API emulator? Just because it’s
hard to make package(s) for Linux distros?
And in case of DirectX game users will have problems, even with Cedega.
Sources are enough for distro-makers and community to make packages.
Author may provide binary packages for the distro he uses.
Also, I’m sure that good game will have few users that are able to
create binary packages for their Linux distros, and they can be made
official.

i have to agree, i dont use wine. either a gaim is for linux or its not.