Использование Cygwin и кроссплатформенных средств разработки Red Hat Linux - Блог им. Catethysis

Использование Cygwin и кроссплатформенных средств разработки Red Hat Linux

Cygwin — это ориентированная на платформу Windows-Intel среда, имитирующая работу ОС подобных Unix; некогда она разрабатывалась компанией, поддерживающей Red Hat. Cyqwin поддерживает все текущие версии операционной системы Windows, включая устаревшие выпуски Windows 9X, NT, Me, 2000 и ХР. Дистрибутив Cyqwin включает исключительно свободно распространяемое ПО. Однако разработчики могут использовать Cyqwin для создания специализированных приложений в соответствии с условиями лицензии, предоставляемой компанией Red Hat. Вы можете загрузить Cyqwin с сайта http://www.cygwin.com.

Инсталлировать дистрибутив Cyqwin можно путем его загрузки и последующего запуска инсталлятора setup.exe. Затем инсталлятор загружает и инсталлирует части пакета Cyqwin, которые вы выбрали для инсталляции. Стандартным местом размещения инсталляции в среде Windows является C:\cygwin. Cyqwin DLL работают со всеми не бета х86-версиями Windows, за исключением лишь Windows СЕ.

Исходный код для всего инсталлированного ПО также доступен из Cyqwin, и вы можете использовать имеющиеся у вас средства разработки для модификации существующих программ или создания новых приложений в Cygwin. Список ПО на основе открытого кода весьма широк и включает множество команд и клиентов в следующих категориях:
• Утилиты для работы с документами и графикой, такие как GNU ghostscript.
• Файловые утилиты GNU, подобные bzip2, gzip, tar, cpio.
• Internet-утилиты для Web-поиска, FTP и электронной почты.
• Клиенты OpenSSH, подобные ssh, sftp и scp.
• Порты средств разработки GNU-ПО, такие как gcc и autoconf.
• Оболочки, подобные ash, bash и zsh.
• Программные библиотеки для поддержки разработки и клиентов.
• ПО для системного планирования, подобное cron.
• Текстовые редакторы, такие как ed, nano, emacs и vim.
• Web-сервер Apache и связанные с ним команды, такие как curl и wget.
• Различные сетевые средства.
• X Window System и сопутствующее ПО, подобное серверам, оконным менеджерам и клиентам.

Кросскомпиляторы и другие кроссплатформенные средства для использования в Red Hat Linux.

Кросскомпиляторы позволяют вам компилировать чужеродные двоичные файлы, используя платформу, которая одновременно является недорогой, высокопроизводительной и удобной (яркий пример — платформа Linux на аппаратном обеспечении Intel). При этом чужеродные файлы будут запускаться на совершенно отличной архитектуре. Впервые Linux была кросскомпилирована на системе minix. Кросскомпиляция очень важна для разработки приложений Palm Pilot (поскольку вы не можете разрабатывать приложения на Palm Pilot, а можете лишь запускать их).

Разработанный Hewlett-Packard процессор PA-RISC широко используется в ряде отраслей, однако более старые версии процессора характеризуются низкой производительностью, а более старое аппаратное обеспечение не очень пригодно для целей разработки. В старых разделах документации PARISC-Linux Cross Compiler HOWTO обсуждаются вопросы компиляции для платформы PARISC с использованием операционных систем Linux.

Применяя предоставляемые Red Hat высокопроизводительные и свободные средства разработки, вы можете использовать Linux и Winelibs для разработки приложений Win32, а затем скомпилировать тот же код как приложения для Linux. Winelibs является средой разработки, которая поддерживает компиляцию приложений Win32 в Linux. Данная среда позволяет приложениям непосредственно обращаться к ядру Linux без использования промежуточного программного слоя. Код Win32, написанный с использованием среды Winelibs, может быть перекомпилирован с минимальными изменениями кода и для не Intel-платформ. Руководство пользователя для Winelibs можно найти на сайте www.winehq.org/documentation.

Если вы желаете использовать Winelibs, регулярно проверяйте актуальную информацию на сайте,
поскольку в продукте было обнаружено несколько ошибок и недочетов, о которых не упоминается в официальной документации. Используйте различные ссылки на тематических веб-страницах для получения кросскомпиляторов Linux для целевых операционных систем, подобных MS-DOS, Windows 95, NT, Mac OS (68K), OS/2 и Amiga.

Linux использует файловые системы minix и ext2, а также несколько других файловых систем. При обслуживании устаревших систем вам наверняка встретятся FAT- или HFS-форматированные флоппи-диски. Red Hat Linux предоставляет набор средств для манипулирования с FAT- и HFS-томами, как будто они являются “родными” для вашего компьютера.

Mtools.
Вы можете использовать утилиты Mtools для манипулирования томами DOS в
Red Hat Linux. По существу, Mtools — это средства Linux, которые выполняют функции, аналогичные средствам командной строки DOS; пользователи DOS не будут испытывать проблем при работе с данными утилитами. Для использования средств Mtools необходимо поместить литеру m перед привычной командой DOS, чтобы вызвать соответствующее средство Mtools. Хотя любое средство Mtools является всего лишь символической ссылкой на единственный двоичный файл mtools, каждое средство имеет свою собственную справочную страницу. Имеется более двадцати средств Mtools и вы можете определить выполняемые ими функции по их названиям.

HSFutils.
HSFutils представляет набор средств, аналогичный Mtools, но предназначенный для манипулирования HFS-томами Macintosh. Средства HSFutils используют тот же самый формат команды, что и средства Mtools, но при этом к имени HSF-команды добавляется литера h. Каждое средство имеет справочную страницу, в которой описывается назначение данного средства. Инструментарий HSFutils имеет графический интерфейс. Графическое средство запускается командой xhfs в командной строке.

Использование двоичной эмуляции в Red Hat Linux.

Формат откомпилированного двоичного приложения имеет большое значение для нормальной работы. Он должен иметь структуру, которую ожидает увидеть ядро при загрузке кода в память для исполнения. Если формат не соответствует тому формату, который может использоваться ядром, код просто не будет выполняться.

Ядро Linux может выполнять эмуляцию чужеродных двоичных форматов, используемых другими
операционными системами Unix. Путем компилирования поддержки этих систем в ядре или путем
загрузки соответствующего модуля ядра Linux может загружать и запускать двоичные файлы, которые предназначались для других систем Unix, как будто они являются “родными” для Linux и ее собственного двоичного формата ELF. Red Hat Linux поддерживает чужеродные двоичные файлы посредством модулей. При этом поддерживаются двоичные файлы следующих операционных систем:
• UnixWare 7.x;
• Solaris 2.x;
• iBCS2/iBCS4 (Intel Binary Compatibility Standard);
• ISC;
• SCO OpenServer 5;
• SCO UNIX 3;
• Xenix;
• Wyse V/386.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *