Volgograd

Волгоград Linux User Group

Организована 23 ноября 2002 года

Проект заморожен Птн Июл 6 02:11:14 MSD 2012


Вход:  Пароль:  

ГраблеВодство/articles/AssembleInLinux/AssemblyHowtoFaq


Это старая версия ГраблеВодство/articles/AssembleInLinux/AssemblyHowtoFaq за 2005-02-09 01:42:21..

Assembly-Howto Faq


Перевод кусочка Assembly-Howto сделанный мной.

Оглавление документа



Как я могу создавать графические программы в Linux'е?


Отвечает Paul Furber (-=paulf at icom.co.za=-)

Хорошо, у вас есть несколько способов рисования в Linux. Какой из них использовать
зависит от того, что вы хотите от того, что вы хотите делать. В сети нет сайта с 
информацией об этом, но вот пару советов:

SVGALib

Это C библиотека для работы с SVGA в консоли.

Плюсы
  • очень простая в изучении, с хорошими примерами, не все из которых
отличны от эквивалентных для gfx библиотеки DOS, все «фишки», которые вам известны из 
DOS могут быть партированы с небольшими трудозатратами.

Минусы
  • программы требуют права суперпользователя для их запуска, так как работают непосредственно с «железом»
  • работает не совсеми chipset'ами.
  • не работают под X-Window

SVGAlib можно найти на http://ftp.is.co.za

Framebuffer

do it yourself graphics at SVGA res

Плюсы
  • быстрота работы
  • linear mapped video access, ассемблер может использовать это если надо

Минусы
  • должно быть вкомпилировано в ядро
  • код зависит от конкретного chipset'а
  • must switch out of X to run
  • предполагает хорошее знание системных вызовов ядра linux'а
  • код сложен для debug'а.

Примеры

Xlib

Библиотеки XFree86 для приложений и разработки

Плюсы
  • полный контроль через ваше X приложение

Минусы
  • сложны в изучении
  • ужасно с ними работать и требует высокого знания того как работает X сервер на низком уровне

Не рекомендуется для использования, но если вы настоящий мазохист, всегда welcome. Скорее всего заголовочные файлы и сами библиотеки уже установлены, так что можно сразу использовать.

Low-Level APIs: PTC, SDL, GGI и Clanlib


Плюсы
  • очень гибкое в использовании
  • работает под X и в консоле
  • generally abstract away the video hardware a little so you can draw to a linear surface
  • множество хороших примеров
  • может быть соединено с другим API, например с Open Gl? и звуковыми библиотеками
  • Windows Direct X? versions for free

Минусы
  • Not as fast as doing it yourself, often in development so versions can (and do) change frequently

Примеры
  • PTC и GGI обладают превосходными примерами, SDL используется sdlQuake, Myth II, Civ CTP и Clanlib так же используется при написании игр.

High-level APIs: OpenGL


Плюсы
  • ясное API 
  • тонны примеров
  • промышленный стандарт

Минусы
  • hardware acceleration должно имется у карточки
  • могут быть различия между версиями и платформами

Примеры

Для начала стоит взглянуть на примеры svgalib и так же установить и настроить SDL.