Разработка Linux GUI - PullRequest
       22

Разработка Linux GUI

14 голосов
/ 30 августа 2008

У меня большой проект с графическим интерфейсом, который я хотел бы перенести на Linux. Какую среду рекомендуется использовать для программирования GUI в Linux? Можно ли использовать для этой цели фреймворки, такие как KDE / Gnome? Или лучше использовать что-то более общее, чем X?

Мне кажется, что если я выберу один из Gnome или KDE, я закрываю рынок для части рынка Linux, который выбрал один из других. (Да, я знаю, что есть совпадение)

Есть ли лучший способ? Или мне нужно было бы создать 2 полных приложения с графическим интерфейсом, чтобы охватить их почти на 100%?

Нет необходимости иметь кроссплатформенное решение, которое также будет работать на Win32.

Ответы [ 4 ]

15 голосов
/ 30 августа 2008

Лучшим вариантом может быть перенос ее на кроссплатформенную библиотеку виджетов, например wxWidgets , которая обеспечит вам переносимость на любую платформу, поддерживаемую wxWidgets.

Также важно проводить различие между библиотеками Gnome и GTK, а также библиотеками KDE и Qt. Если вы пишете код для использования GTK или Qt, он должен хорошо работать для пользователей любой среды рабочего стола, включая менее популярные, такие как XFCE. Если вы используете другие библиотеки Gnome или KDE для выполнения задач, не связанных с виджетами, ваше приложение будет менее переносимым между средами рабочего стола.

5 голосов
/ 30 августа 2008

Я рекомендую wxWidgets или Qt . Они оба зрелые, хорошо структурированные и кроссплатформенные, с достойной документацией и образцом исходного кода.

4 голосов
/ 30 августа 2008

Gnome-приложения работают на рабочих столах KDE и наоборот; ты никого не запрешь. Что касается инструментов, это довольно субъективно. Все наборы инструментов довольно кроссплатформенны. Если вы не с открытым исходным кодом, тогда GTK + будет более дешевым вариантом, поскольку Qt бесплатен только для использования с открытым исходным кодом, тогда как GTK + - это LGPL.

0 голосов
/ 30 августа 2008

Думали ли вы об использовании Mono? Такие программы, как Paint.NET, прекрасно работают под Linux и Windows.

...