Linux Development Part 1

Posted by suvi under Games, Programming

Finding information about how to develop and publish games for Linux
is difficult. There aren’t many articles or tutorials written about it,
and there is no centralized web site you can go to find all the
answers. It took me a long time to find all the information I needed to
finish the Linux version of Dirk Dashing: Secret Agent and publish it.
So I’ve decided to write a series of articles to capture everything I
have learned. I hope these articles will be useful to other developers
who want to port their games to Linux.

By the way, the information in these articles can apply to
other commercial applications besides games, so if you’re not a game
developer, that’s ok. You’ll still be able to use a lot of the
information that is here.

Here is the outline for this series, so that you can see where we’re going.

  • Part 1: Introduction
    You’re reading it now. The goal here is to
    introduce you to Linux, and provide a high-level overview of Linux
    development so you can get started.
  • Part 2: Distributable Binaries
    You’ll learn how to create a binary executable that will run on almost any Linux distribution.
  • Part 3: Installers
    You’ll learn about the different install builders that are available
    for Linux, and how to create an easy-to-use installer that will run on
    any Linux distribution.
  • Part 4: Testing
    You’ll learn about testing your game on Linux, and some of the issues involved.
  • Part 5: Marketing and Distribution
    In the last installment in this series, you’ll discover some tips for how to market your Linux game.

Before I begin, I would just like to acknowledge several key
individuals who helped me find all of this information: Ilya Olevsky,
Gianfranco Berardi, and Gerry Jo Jellestad. You guys rock!

What is Linux?

For those of you who may not know, Linux is a free operating system
originally created by Linus Torvalds and developed with the assistance
of programmers around the world. It is an alternative to other
operating systems like Windows. It is tremendously stable, very
reliable, and much more secure than Windows. Linux also offers several
different file systems, like ReiserFS and XFS, which are noticeably
faster than FAT32 or NTFS on Windows.

You can find a set of free, introductory tutorials about Linux at http://www.linux.org/lessons. If you’re new to Linux, I recommend starting here.

Why Develop for Linux?

Linux usage has been steadily growing over the past few years,
according to several independent research firms, including IDC and
eMarketer. Many Windows users are getting tired of adware, spyware,
viruses, unsecure software, and security patches that break their
computers. A growing number of users are slowly starting to look for
alternative operating systems. In addition, I think Windows Vista will
drive even more users to alternative operating systems, due to its high
cost, massive hardware requirements, and invasive anti-piracy features.

The two leading alternative operating systems are Mac OS and
Linux. Mac OS has several advantages over Linux: it is better known,
there is Mac software readily available in some computer stores, and
Mac OS comes preinstalled (on Mac hardware). The problem with Mac,
however, is two-fold: first, Mac computers are generally more expensive
than PCs, and second, they are not easy to purchase. For example, the
computer store near me had a wide selection of Mac computers on the
floor, but none in stock - they had to special order it, which meant I
had to wait for it. From the testimonials I’ve read online, my
experience was not an isolated one. Issues like this won’t help Mac
become a more mainstream OS.

Linux, on the other hand, is freely available and can be
installed on the user’s existing computer hardware. As a traditional
Windows user who has recently looked at both Linux and Mac for the
first time, I personally found Linux much easier to learn than Mac. The
K Desktop Environment (KDE) that many distributions use is similar to
the Windows desktop, which makes it fairly easy to transition to Linux.
There are plenty of applications available for Linux, with more
applications being released each year. The only kind of software that
isn’t widely available for Linux are games, and many analysts I’ve read
feel that the lack of games is what is preventing a wider adoption of
Linux among home users.

If more home users do indeed migrate to alternative operating
systems, then game developers are going to need to know how to write
games for Mac and Linux. There are plenty of resources available for
Mac development, but hardly any for Linux. That’s why I’m writing these
articles.

Read more at GameDev.net 

Leave a Reply

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word