Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как организовать кроссплатформенную разработку? интересуют профессиональные методы 
:(
    Опции темы
JavaCraft
Дата 17.5.2007, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 8.2.2007

Репутация: нет
Всего: 1



Поделитесь опытом, как организовать процесс синхронной разработки кроссплатформенного софта на C/C++.
Мне это нужно для изучения. К сожалению, пока не удалось найти руководства или статей по этому вопросу.

Вот моя нулевая гипотеза, что для этого нужно и как это сделать.

1) Нужно использовать CVS, даже для одного разработчика, т.к. предполагается несколько версий(веток) одного и того же софта для разных целевых платформ. Я не хочу "портировать" проект, а хочу добиться одновременной разработки одного проекта, с учетом специфических особенностей каждой платформы. 

2) Нужно минимизировать дублирование исходного кода. В идеале он должен быть один. Например, лежать в папке eclipse/workspace/src. Нужно добиться, чтобы вся мультиплатформенность реализовалась в одном или нескольких иерархически организованных Configure и Makefiles, на уровне предкомпиляции. Частично, конечно не обойтись без каких-то деклараций в самом коде, но это значительно меньше, чем в Configure и Makefiles.
Должен же существовать специальный софт и методика для автоматизации такой разработки?

3)Например, возьмем Eclipse CDT. Нужно как-то, не знаю как, работая на разных платформах(Linux,FreeBSD,QNX,Solaris,Win32), создать проекты для разных целевых платформ из того-же списка. Тут не понятно, можно ли из Unix* компилить Win32 версии, как и из Windows компилить Unix*. Мне не удалось под Eclipse создать управляемый Make проект для нескольких платформ, а разные проекты не получается связать через один источник исходников. Боюсь, что придется лабать неуправляемый стандарный проект(Это очень тяжко), но даже для него разрешается указать только платформенно-зависимый парсер.
Вообще, Eclipse этого годится?

4)Нужно подобрать комплект кроссплатформенных библиотек и пользоваться только ими и stdlib.
Предполагается, что проект состоит из нескольких модулей отвечающих за различные функции - работа с сетью, с базой, с другими ресурсами. Только один из них - GUI.

Извините, если я тут нагородил глупостей. Какие будут Ваши рекомендации?
Можно как-то профессионально организовать разработку?

PM MAIL   Вверх
bsa
Дата 18.5.2007, 23:25 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 16
Всего: 196



1. Рекомендую использовать Subversion - он более совершенный, чем CVS. Не надо плодить кучу разных веток. Все должно быть в одной, иначе дублирования не избежать. Систему контроля версия использовать в любом случае надо - очень удобно делать откаты и смотреть кто, когда и чем тебе что-то испортил.

2. Тут много зависит от выбранной IDE. И стратегии написания кода. Кто тебе мешает сделать разные цели для разных платформ? Например, у меня WindowsDebug, WindowsRelease, LinuxDebug и LinuxRelease. В них определены разные параметры компиляции, что дает возможность компилировать по-разному под разные платформы.

3. Я точно знаю, что Code::Blocks вполне для этого пригоден - сам в нем веду один проект под Windows и Linux одновременно.

4. Многое зависит от предпочтений и языка. Например, для C++ я бы рекомедовал: Qt и boost... Если использовать только эти либы, то, думаю, сильно заморачиваться с настройками среды не придется.
PM   Вверх
t_rex
Дата 19.5.2007, 00:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 143
Регистрация: 11.10.2006
Где: Украина, г. Запор ожье

Репутация: нет
Всего: 7



Через пару дней подниму http://wxwidgets.info (щаз пока сайд в дауне) и можно будет почитать статьи на эту тему
Если же нетерпится, то можно почитать в блогах на http://forums.realcoding.net (блог "Всё о кросс-платформенном программировании на C++/wxWidgets")
--------------------
Жизнь не MultiEdit. Undo не сделаешьКросс-платформенное программирование с wxWidgetsБлог о программировании для мобильных устройтсвGoogle Android для программистов и пользователей
PM MAIL WWW ICQ Skype GTalk   Вверх
JavaCraft
Дата 27.8.2007, 15:18 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 8.2.2007

Репутация: нет
Всего: 1



Извините за молчание. Был в отпуске, а потом заморочки.

QT не устраивает из-за лицензии. Мне нужно минимизировать стоимость софта. Желательно, чтобы всё бесплатно.
Собственно, кто и что испортил пока не вопрос, я один пока пишу, но даже в одиночку есть потребность в контроле версий.
Раньше обходился простым копированием проекта, теперь этого не достаточно.

Пока остановился на wxWidgets. Напрягают размеры простеньких приложений, более мегабайта.


PM MAIL   Вверх
Fazil6
Дата 27.8.2007, 15:22 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 1
Всего: 60



Цитата(JavaCraft @  27.8.2007,  15:18 Найти цитируемый пост)
QT не устраивает из-за лицензии. Мне нужно минимизировать стоимость софта. Желательно, чтобы всё бесплатно.

QT можно использовать и бесплатно соблюдая GPL
PM MAIL   Вверх
Любитель
Дата 27.8.2007, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: нет
Всего: 92



Цитата(bsa @  18.5.2007,  23:25 Найти цитируемый пост)
Не надо плодить кучу разных веток

Причём не в коем случае!

Цитата(JavaCraft @  27.8.2007,  15:18 Найти цитируемый пост)
Собственно, кто и что испортил пока не вопрос, я один пока пишу

Не могу расписываться за тебя, но за себя могу сказать, что и одному легко испортить что угодно smile Хотя для меня главное в свн-ке при одиночной разработке - это откат smile Иногда откат в пределах одного метода.

Цитата(JavaCraft @  17.5.2007,  12:06 Найти цитируемый пост)
Вообще, Eclipse этого годится?

Пока, к сожалению, нет. Точнее не совсем да. Ибо мэнеджед мейк далеко не иделаен. Я бы даже сказал извратен...

Цитата(bsa @  18.5.2007,  23:25 Найти цитируемый пост)
Например, для C++ я бы рекомедовал: Qt и boost

Стандартный ответ smile


--------------------
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0708 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.