Библиотека Интернет Индустрии I2R.ru |
|||
|
Возьми себе немного... UnixUnix (Linux, Solaris etc.) -- это модно, интересно, круто в конце концов. Но вместе с тем и непросто. Совершенно другая ОС, незнакомая идеология, непривычные инструменты. А ведь ее нужно сначала установить, настроить, разобраться с неожиданными нюансами и лишь после (!) приступить к изучению. Неужели нет более легкого способа? В последнее время становится все более заметным "перекрестное опыление" Windows и Unix (в широком смысле). Правда, процесс этот в достаточной мере односторонний: под Unix/Linux работают эмуляторы Windows, позволяющие запускать достаточно сложные приложения вплоть до 3D-игр, а некоторые дистрибутивы пытаются даже копировать "look-and-feel" операционных систем Microsoft. Windows также постепенно перенимает кое-какие лучшие черты Unix, однако большинство пользователей воспринимают это как должное, даже не замечая конвергенции. Чтобы по-настоящему приобщиться к Unix, ее все же нужно увидеть воочию, что, однако, сопряжено с определенными трудностями.
А зачем?
Собственно, именно последний мотив и послужил толчком к "микрооткрытию" и написанию данной статьи. Еще во времена оны автор с завистью смотрел в сторону "юниксоидов" -- им доступна LyX, свободная почти-WYSIWYG оболочка (front-end) к TeX, обладающая к тому же многими свойствами обычного текстового процессора. Как ни странно, для платформы Windows подобных разработок нет по сей день, Scientific Word/Workplace не в счет: во-первых, это коммерческое ПО, а во-вторых, вполне самодостаточное -- хоть и построенное на основе TeX, но использующее собственные надстройки, стандартными отнюдь не являющиеся (это уже потом, в третьей, кажется, версии появилась возможность экспорта в специальный формат portable TeX). Естественно, подобные мысли приходили в голову далеко не мне одному, поэтому попытки портировать LyX под Windows предпринимались -- с переменным успехом -- давно. Главной же проблемой была необходимость использования внешнего ПО X Server, которое хоть и имелось "в ассортименте", но являлось коммерческим, вполне соизмеримым (в лучшем случае) по цене с Scientific Word -- овчинка явно не стоила выделки. И только сравнительно недавно все эти вопросы благополучно разрешились. А главным "виновником торжества", безусловно, стоит признать... Cygwin Cygwin -- это проект по переносу на платформу Windows популярных инструментов GNU, в первую очередь -- средств разработки: gcc, gas, gdb и пр. Начинала его компания Cygnus (давшая первую часть названию), затем знамя подхватила Red Hat. Примечателен этот проект тем, что разработчики избрали далеко не лобовой путь -- вместо переписывания каждой программы по отдельности они создали некую программную прослойку (набор библиотек), реализующую стандартные системные функции Unix. Под этим подразумевается поддержка вызовов ANSI С и POSIX (полный список можно найти в разделе FAQ на сайте проекта).
Начинался Cygwin с небольших консольных GNU-утилит, компиляторов, командных оболочек, однако сегодня вместе с ними в стандартной поставке имеются и серверные продукты, к примеру PostgreSQL, Apache, squid и пр. (впрочем, некоторые из них перенесены и непосредственно под Windows). Установив пакет, вы можете практически забыть о COMMAND.COM и CMD -- их с успехом заменит оболочка bash, которая к привычным консольным командам Windows добавит все богатство инструментов Unix. А знакомство с текстовыми Web-броузерами lynx и links позволит почувствовать себя настоящим (почти) гуру. Впрочем, проект Cygwin далеко не нов, и многие уже давно приняли его в свой арсенал или хотя бы на заметку. Мое же внимание привлек Cygwin/XFree86 -- проект в проекте, посвященный, как нетрудно догадаться из названия, переносу на платформу Cygwin популярнейшего (хотя бы в силу открытости и бесплатности) продукта XFree86. Уже портированы (и скомпилированы средствами Cygwin) X Server, распространенные Х-клиенты, необходимые библиотеки и кое-какие пользовательские программы, в число которых попали даже отдельные игры. Это -- действительно принципиальный момент, поскольку теперь под Cygwin смогут работать не только классические консольные утилиты, но и современные графические приложения. Примеры? Как насчет KDE (kde-cygwin.sourceforge.net)? Да, передовая графическая оболочка, особенно популярная в мире Linux, уже функционирует в среде Cygwin/XFree86, хотя и с многочисленными огрехами и оговорками -- сами разработчики характеризуют состояние проекта как "beta quality" (во всяком случае, после завершения работы обычно приходится вручную вычищать из памяти "завалявшиеся" там модули -- как обычные win32-программы). Тем не менее при желании любой пользователь Windows сможет оценить дизайн KDE, качество работы Konqueror и некоторых других приложений. Ну и, конечно же, LyX, из-за которой, собственно, и разгорелся весь сыр-бор. Программа замечательно работает в среде Cygwin/XFree86 и дает сполна почувствовать преимущества симбиотического подхода Cygwin. Скажем, стандартно распространяемый в рамках проекта teTeX все еще находится в бета-стадии, поэтому можно (и лучше) воспользоваться полноценным Windows-пакетом MiKTeX. А Perl, необходимый для преобразования LaTeX-файлов во внутренний формат LyX, годится и из Cygwin. Для пущей важности имеется даже специальная утилита, интегрирующая буферы обмена Windows и X Server. Правда, над поддержкой кириллицы и корректным преобразованием кодировок придется покорпеть отдельно, но это, по большому счету, вторичный вопрос. Насколько это сложно Человеку, совсем далекому от мира Unix, все вышесказанное может показаться "филькиной грамотой": незнакомые термины, утилиты... К счастью, все организовано таким образом, чтобы не вызвать проблем даже у не слишком подготовленного пользователя. Процессом установки управляет специальная программа Setup, предварительно загружающая перечень официальных "зеркал" и список доступных пакетов, а также отслеживающая (практически безошибочно) взаимосвязи между ними. С ее же помощью можно инсталлировать и дополнительные пакеты вроде LyX или KDE, достаточно лишь указать корректный адрес. Соответственно, в дальнейшем таким же образом можно удалить лишние модули, обновить пакеты и пр. Наверняка эта методика многим покажется знакомой -- так же актуализируются почти все современные дистрибутивы Linux и устанавливаются броузеры и некоторое другое ПО. В любом случае неофиты вполне могут положиться на автоматическую процедуру, подгружая дополнительные компоненты по мере необходимости. Следует также обращать внимание на размеры пакетов, поскольку суммарный объем всех описанных дистрибутивов составляет почти 200 MB -- чем не полновесная ОС! И в результате... Все же нужно четко понимать, что настоящую Unix таким образом получить нельзя. Например, вам не удастся сполна вкусить все прелести самостоятельного конфигурирования X Server -- необходимую для этого информацию система возьмет непосредственно у Windows, да и соответствующих утилит в составе нет. И в этом кроются как плюсы, так и минусы. С одной стороны, процесс установки и первичного знакомства проходит совершенно без проблем и лишних трудозатрат, с другой -- взявшись затем за полноценную Unix, вы наверняка столкнетесь с неведомыми доселе сложностями. Впрочем, для тех задач, которые упоминались в начале статьи, такой подход вполне оправдан. Кстати, Cygwin -- не единственный пример концепции "Unix в Windows". Так, похожий проект -- U/WIN-- больше ориентирован именно на программистов (gcc и прочие GNU-инструменты также портированы). Но вот собственного X Server в нем нет, так что я -- за Cygwin. Однозначно. |
|
2000-2008 г. Все авторские права соблюдены. |
|