Upcoming Events


Quick Stats
4545 people currently visiting GDNet.
2236 articles in the reference section.

Help us fight cancer!
Join SETI Team GDNet!



Link to us

  search:   

Linux Game Development Part 1
Introduction


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.



Getting Started with Linux

Contents
  Introduction
  Getting Started with Linux

  Printable version
  Discuss this article

The Series
  Part 1: Introduction
  Part 2: Distributable Binaries
  Part 3: Installers
  Part 4: Testing
  Part 5: Marketing and Distribution