Играем в Линуксе!

Xakep, номер #048, стр. 048-078-2


Для успешной сборки программы с GTK-интерфейсом, использующей OpenGL, компилятор следует озадачить следующими дополнительными аргументами:

$ gcc -O2 -Wall `gtk-config --cflags --libs` -lGL -lGLU -lgtkgl proga.c –o proga

А чтобы использовать возможности библиотеки SDL:

$ gcc -O2 -Wall `sdl-config --cflags --libs` proga.c -o proga

Для оптимизации исполняемого кода можно попробовать заменить параметр '-O2'

на '-O3 -funroll-all-loops -fomit-frame-pointer -ffast-math -march=i686 -mcpu=i686'

Чтобы узнать, сколько времени занял процесс компиляции, можно воспользоваться утилитой time:

$ time /bin/sh -c "gcc куча_флажков_и_опций proga.c -o proga"

Пингвинообустройство

Прежде, чем гонять игрушки, следует убедиться, что в системе присутствуют следующие компоненты: нормальный компилятор, способный собрать что-то посерьезнее проги типа "Hello, world!" (под нормальным я подразумеваю

пропатченный gcc версии 2.95.3, либо cvs'нутый gcc ветки 2.95 - это окрещенная разработчиками FreeBSD версия 2.95.4, либо gcc версии 3.2, которую рекомендую для получения дополнительной оптимизации в исполняемом коде счастливым обладателям последних пней и атлонов), glibc 2.2.3 и выше, средства разработки, X-Window версии 4.03 и выше. Также для успешной сборки гамесов тебе понадобятся специальные библиотеки, со списком которых можешь ознакомиться на врезке.

Библиотека для работы с графическим форматом PNG: Libpng www.libpng.org/pub/png/libpng.html

Библиотека для сжатия данных: Zlib www.gzip.org/zlib/

Библиотека для создания игр: Plib http://plib.sf.net

Реализация спецификации OpenGL от группы независимых разработчиков: Mesa3d www.mesa3d.org

Набор дополнений для OpenGL: Glut www.opengl.org/developers/documentation/glut/index.html

Назад на стр. 048-078-1  Содержание  Вперед на стр. 048-078-3