Unix и FreeBSD

Моя заключительная цель состоит в том, чтобы записать программу, которая может работать на Unix ОС. Я знаю, что существует много версий Unix и не знают точно на данный момент, какой я должен поддерживать. Я не могу установить Unix ОС прямо сейчас. Единственная вещь, которую я могу сделать, состоит в том, чтобы использовать свободную ОС, которая является близко к Unix как можно больше. Действительно ли FreeBSD является хорошим выбором для этого? Я знаю, что существует также OpenBSD, возможно что-то еще.

Дополнительная информация: языком программирования является C++, я использую GCC с некоторыми портативными библиотеками: Повышение и wxWidgets.

8
задан Alex F 24 March 2010 в 09:24
поделиться

5 ответов

OpenBSD, FreeBSD, DragonFlyBSD, NetBSD, Open Solaris и т. Д. - все открытые и бесплатные операционные системы Unix, вы не можете приблизиться к этому.

Чтобы обойти ограничение на установку, рассмотрите возможность виртуализации с помощью такого инструмента, как Sun Virtual box .

7
ответ дан 5 December 2019 в 08:23
поделиться

В зависимости от того, что ваша программа делает, на каком языке она написана и т. д. вы можете писать переносимый код на любой платформе. Например, я обычно портирую одно из своих приложений, написанных на C ++, из Windows, где я его разрабатываю, в Linux с одним незначительным изменением (я удаляю поддержку ODBC). Так что выбор ОС для разработки не критичен - нужно сознательное написание переносимого кода.

5
ответ дан 5 December 2019 в 08:23
поделиться

См. Стандарт POSIX . Это переносимый API, поддерживаемый большинством Unix-подобных операционных систем.

3
ответ дан 5 December 2019 в 08:23
поделиться

какие программы вы пишете и на каком языке используете? Независимо от того, используете ли вы FreeBSD или Solaris и т. Д., Вы можете писать довольно переносимый код, используя C ++ / Python / Perl и т. Д. Эти языки программирования могут работать на разных платформах, и я не думаю, что у вас возникнут серьезные проблемы с этим.

2
ответ дан 5 December 2019 в 08:23
поделиться

См. Спецификацию Single UNIX . Если вы делаете только предположения, приведенные на страницах руководства, предоставленных OpenGroup в ее единой спецификации UNIX, то ваш код должен работать во всех UNIX-совместимых ОС.

Если вы используете мою поисковую машину по разработке / кодированию , она будет сильно смещена в пользу источников из Единой спецификации UNIX, и нажатие на «Единая спецификация UNIX» ограничит поиск этим источником. Пока вы ограничиваете себя гарантиями, предоставляемыми спецификацией, она должна работать со всеми вариантами UNIX.

Я также должен отметить, что если вы еще больше ограничите себя использованием только функций, предоставляемых стандартом ISO C ++, библиотеками Boost C ++ и WxWidgets, тогда вы сможете настроить таргетинг не только на все варианты UNIX, но также и Windows. Однако, если вам нужно настроить таргетинг только на UNIX, тогда любой из системных интерфейсов в Единой спецификации UNIX, как указано в ней, должен быть безопасным для использования.

Что касается среды разработки, я бы порекомендовал вам установить копию Ubuntu Linux в VirtualBox , поскольку настройка рабочей среды разработки в этом конкретном дистрибутиве Linux выполняется следующим образом. просто, как однократный вызов sudo apt-get install , а Linux де-факто совместим с UNIX. Единственная команда sudo apt-get install build-essential pkg-config g ++ automake autoconf cmake doxygen libboost1.40-dev libwxgtk2.8-dev достаточно для получения полностью рабочей среды разработки C ++ в Ubuntu с установленными WxWidgets и библиотеками Boost C ++.

3
ответ дан 5 December 2019 в 08:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: