- Cygwin
- Installing and Updating Cygwin Packages
- Installing and Updating Cygwin for 64-bit versions of Windows
- Installing and Updating Cygwin for 32-bit versions of Windows
- Signing key transition
- General installation notes
- Q: How do I add a package to my existing Cygwin installation?
- Q: Is there a command-line installer?
- Q: Why not use apt, yum, my favourite package manager, etc.?
- Q: How do I install everything?
- Как установить cygwin для windows
- Admin’s Notes
- пятница, 6 марта 2015 г.
- Установка и настройка Cygwin
- Установка Cygwin
- Терминал Console
- Пакетный менеджер для Cygwin
- Что такое CYGWIN. Устанавливаем Cygwin Установка cygwin c windows 10
- Установка Cygwin
- Добавление Cygwin в Path
- Установка Cash в Windows
- Выводы
- Об авторе
- Установка Cygwin
- Терминал Console
- Установка пакетов для python с помощью pip
- MAN-страницы для функций libc
- Vim в Cygwin
Cygwin
Get that Linux feeling — on Windows
Installing and Updating Cygwin Packages
Installing and Updating Cygwin for 64-bit versions of Windows
Run setup-x86_64.exe any time you want to update or install a Cygwin package for 64-bit windows. The signature for setup-x86_64.exe can be used to verify the validity of this binary.
Installing and Updating Cygwin for 32-bit versions of Windows
Run setup-x86.exe any time you want to update or install a Cygwin package for 32-bit windows. The signature for setup-x86.exe can be used to verify the validity of this binary.
Signing key transition
See this mail for more details.
General installation notes
When installing packages for the first time, the setup program does not install every package. Only the minimal base packages from the Cygwin distribution are installed by default, which takes up about 100 MB.
Clicking on categories and packages in the setup program package installation screen allows you to select what is installed or updated.
Individual packages like bash, gcc, less, etc. are released independently of the Cygwin DLL, so the Cygwin DLL version is not useful as a general Cygwin release number. The setup program tracks the versions of all installed components and provides the mechanism for installing or updating everything available from this site for Cygwin.
Once you’ve installed your desired subset of the Cygwin distribution, the setup program will remember what you selected, so re-running it will update your system with any new package releases.
On Windows Vista and later, the setup program will check by default if it runs with administrative privileges and, if not, will try to elevate the process. If you want to avoid this behaviour and install under an unprivileged account just for your own usage, run setup with the --no-admin option.
Q: How do I add a package to my existing Cygwin installation?
A: Run the setup program and select the package you want to add.
Tip: if you don’t want to also upgrade existing packages, select ‘Keep’ at the top-right of the package chooser page.
Q: Is there a command-line installer?
A: Yes and no. The setup program understands command-line arguments which allow you to control its behavior and choose individual packages to install. While this provides some functionality similar to such tools as apt-get or yum it is not as full-featured as those package managers.
Q: Why not use apt, yum, my favourite package manager, etc.?
A: The basic reason for not using a more full-featured package manager is that such a program would need full access to all of Cygwin’s POSIX functionality. That is, however, difficult to provide in a Cygwin-free environment, such as exists on first installation. Additionally, Windows does not easily allow overwriting of in-use executables so installing a new version of the Cygwin DLL while a package manager is using the DLL is problematic.
Q: How do I install everything?
A: You do not want to do this! This will install an enormous number of packages that you will never use, including debuginfo and source for every package.
If you really must do this, clicking on the «Default» label next to the «All» category to change it to «Install» will mark every Cygwin package for installation. Be advised that this will download and install tens of gigabytes of files to your computer.
Как установить cygwin для windows
Для того, чтобы в среде Eclipse можно было компилировать C/C++ приложения для Android, понадобится среда окружения Cygwin [1], где есть необходимая утилита make.
[Установка CygWin]
Запустите на выполнение setup-x86.exe или setup-x86_64.exe [1] в зависимости от версии Вашей Windows. На скриншотах показаны шаги выбора в мастере установки. Выберите Install from Internet, каталог установки c:\cygwin, папку для сохранения временных файлов c:\temp, тип подключения к Интернет, адрес сервера, откуда будут скачиваться пакеты.
Выберите для установки пакеты Devel/make и Shells/bash.
Запустите установку и дождитесь её окончания.
[Проверка работоспособности CygWin]
Выполните в командной строке команду:
В Вашей операционной системе может быть установлено несколько программ, которые могут использовать утилиту make. К примеру, это могут быть Atmel Studio 6, Visual Studio, MinGW, WinAVR и другие тулчейны. Какая из утилит make запустится в ответ на ввод команды make, зависит от переменной окружения PATH, где указаны пути поиска запускаемых программ. Утилита make из пакета Cygwin находится в папке c:\cygwin\bin, поэтому если хотите, чтобы запускалась именно эта версия make, то проверьте наличие пути c:\cygwin\bin в составе переменной PATH. Содержимое переменной PATH можно посмотреть командой консоли set PATH. На скриншоте показан пример такого вывода.
Как можете увидеть на примере этого скриншота, в данном случае переменная PATH не содержит пути c:\cygwin\bin, поэтому будет запускаться утилита make из каталога c:\Program Files\Atmel\AVR Tools\AVR Toolchain\bin (этот путь присутствует в переменной PATH, и стоит первым по порядку). Поэтому будьте внимательны!
Переменную PATH можно настроить через Мой компьютер -> Свойства -> Дополнительно -> Переменные среды.
При запуске make из окна терминала Cygwin Terminal запустится утилита make из каталога c:\cygwin\bin:
[Настройка переменных окружения bash-шелла Cygwin]
Все переменные окружения Windows автоматически импортируются в переменные окружения bash. Однако есть некоторая проблема, связанная с пробелами в именах путей Windows. Такие пути требуют особого внимания, и для их корректного преобразования в пути cygwin требуется специальная настройка.
Для разработки под Android нужно, чтобы были доступны утилиты JDK, SDK, NDK, Ant, которые находятся обычно в путях, обозначенных переменными окружения Windows: JAVA_HOME, ANDROID_SDK, ANDROID_NDK, ANT_HOME соответственно. Если в путях переменных окружения есть пробелы, то такие переменные требуют специального экспорта в окружение bash.
В каталоге c:\cygwin\home\имя_пользователя\ находится файл .bash_profile, в котором делаются основные настройки рабочего окружения среды bash Cygwin. Для настройки переменных окружения, связанных с путями поиска утилит JDK, SDK, NDK, Ant, добавьте в конец файла .bash_profile следующие строки:
Команда export назначает указанное значение строковой переменной окружения. Это значение вырабатывает утилита cygpath, которая принимает в качестве параметра значение старой переменной окружения Windows. Обратите внимание, что строка с опциями для запуска команды cygpath обрамлена символом ` , который служит для выделения запускаемой команды в конфиге. Не переgутайте ` с другими символами ‘ и «», это очень важно.
Если после внесения указанных изменений в файл .bash_profile запустить окно терминала Cygwin, то в переменных окружения bash появятся переменные $JAVA_HOME, $ANDROID_SDK, $ANDROID_NDK, $ANT_HOME, которые будут иметь корректные пути cygwin. Вот пример такого пути для переменной $JAVA_HOME:
Admin’s Notes
пятница, 6 марта 2015 г.
Установка и настройка Cygwin
Cygwin (Сигвин) представляет собой набор Unix программ и библиотек, скомпилированных под ОС Windows и размещенных в файловой системе таким же образом как и в настоящем Unix-е. Благодаря этому мы получаем полный эквивалент Unix среды начиная от bash и вплоть до компиляторов gcc, которыми без особого портирования исходного кода можно собирать проекты для выполнения в Windows (достаточно большое количество кросс-платформенных приложений используют такой подход, так как он наиболее простой и быстрый).
Установка Cygwin
Скачать Cygwin для 32х или 64х — разрядной версии можно на сайте https://cygwin.com/install.html . Установка весьма простая — можно просто нажимать «Далее» до окна выбора пакетов (Select Packages). Тут перед вами откроется база пакетов, причем некоторые из них уже будут отмечены для остановки (базовы), другие вы можете отметить сами. Для того, что бы отметить пакет на установку, нужно ввести его имя в поле «Search», затем раскрыть категории и найти этот пакет. Потом нажать «Skip», в результате чего вместо Skip должна появится версия, которая будет установлена. Для дальнейшей работы отметьте пакет wget, остальное можно пока не трогать. Пакеты можно будет доустановить или удалить в любой момент времени, просто повторно запустив установщик, но это не совсем удобно, поэтому дальше в статье я расскажу как устанавливать пакеты из командной строки (для этого нам и понадобится wget).
По дефолту cygwin запускается в стандартном терминале Windows, что не очень удобно.
Терминал Console
Скачать можно тут http://sourceforge.net/projects/console/ . Нужно просто распаковать архив куда-нибудь в Program Files и создать ярлык для быстрого запуска. Запустив Console заходим в настройке и на вкладке Tabs жмем на Add. В Shell указываем путь к cygwin.bat:
Оставшийся дефолтный таб можно удалить (выделеть и нажать Delete).
Теперь можно настроить действия по клавишам мыши в дереве Hotkeys/Mouse, например достаточно удобно копировать и вставлять нажатием правой кнопки мыши:
Назначение выполняется путем нажатия кнопки Assign.
Ну и конечно «горячие» клавиши в пунке дерева Hotkeys. Я назначил следующие комбинации (Остальные меня устраивают):
- New Tab — Ctrl + Shift + T (открыть новую вкладку)
- Copy selection — Ctrl + Shift + C (копирование выделения)
- Paste — Ctrl + Shift + V (вставка)
Также можно полазить по другим настройкам — можно найти много удобностей.
Пакетный менеджер для Cygwin
Что бы устанавливать пакеты через консоль в одну строку кода нужно установить apt-cyg (типа как apt-get в Ubunt-ах). Установка сводится к скачиванию, добавлению прав на выполнение и перемещению в папку выполняемого Path-а:
Что такое CYGWIN. Устанавливаем Cygwin Установка cygwin c windows 10
Что такое CYGWIN После статьи Криса Касперски «Как из Windows сделать Unix» в КГ №3 от 23.01.01 я загорелся желанием чуть подробнее рассказать пользователям Windows о том, что такое Cygwin. Пользуюсь я им достаточно давно и уже не могу эффективно работать в Windows без установленного Cygwin.
Слово Cygwin складывается из двух составляющих: Cygnus — это имя компании, и Windows, но было бы неверно сказать, что все в Cygwin написано ребятами из Cygnus. Cygwin — это порт утилит Gnu под Windows, а Gnu (www.gnu.org) — это проект Фонда Свободного Программного Обеспечения (Free Software Foundation, или просто FSF), ставящий своей целью создание некоммерческой Unix системы, не принадлежащей никому в отдельности и свободной от ограничивающих свободу распространения и модификации ПО лицензий. В рамках этого проекта были переписаны заново практически все стандартные утилиты UNIX. Три самых значительных вклада FSF — это gcc (Gnu C Compiler, или Gnu Compiler Collection), Bash (командный интерпретатор Bourne Again Shell) и Emacs. Без gcc не было бы Линукса, а Bash — стандартная командная оболочка для многих современных Unix-систем. Люди с опытом говорят, что первое, что делают сисадмины после установки коммерческих Unix»ов, — это доинсталлируют Gnu утилиты. В принципе, GNU и FSF сами по себе — тема обширная и заслуживающая отдельной подробной статьи.
Весь набор Gnu-утилит представляет собой набор маленьких (как правило) программок, которые покрывают большинство задач, с которыми ежедневно сталкивается пользователь Unix системы (и не только Unix), каждая такая программка выполняет одну задачу, и выполняет ее хорошо. Эти программки могут затем комбинироваться для решения различных задач.
Попытки перенести Gnu на другие, не Unix платформы осуществлялись не раз, что, кстати, свидетельствует об их популярности.
Стоит упомянуть проект портирования утилит под DOS — DJGPP. Сходите на сайт http://www.delorie.com/djgpp/, это действительно интересно.
Cygnus не стал компилировать каждую утилиту в отдельности, мучаясь каждый раз для решения одних и тех же проблем, вместо этого была написана некая «прокладка» между GNU утилитами и операционной системой. Эта прокладка — cygwin1.dll (1 — номер версии) — обеспечивает эмуляцию системных вызовов UNIX, что позволяет компилировать и исполнять Unix программы без или почти без изменения исходного кода. В принципе, эта dll и есть сам Cygwin, а все остальное — программные пакеты GNU, скомпилированные для работы с Cygwin.
Наличие gcc и библиотек дает возможность переносить под Windows самые различные приложения и делает Cygwin полноценной платформой — вы можете иногда найти выражение «Cygwin platform». Со времени первых бета-версий Cygwin различные люди компилировали под Cygwin то, чего им не хватало под Windows, рос постепенно и стандартный дистрибутив Cygwin, в том числе и за счет этих самопальных компиляций. К примеру, во время версии Beta 20 мне приходилось отдельно скачивать редактор vim, а сейчас он ставится вместе со всем набором.
Как это все инсталлировать
В Cygnus написали удобную программку для управления пакетами, слегка напоминающую некоторые аналогичные программы из дистрибуций ОС Линукс. Первый шаг — это скачать ее с сайта Cygnus http://sources.redhat.com/cygwin/setup.exe. Запустив ее, Вы сможете скачать стандартный набор пакетов с одного из многочисленных зеркал, причем Вы можете желать это выборочно, пропуская отдельные пакеты.
На будущее — запуская эту программку позже из этой же директории, Вы сможете увидеть, какие появились новые пакеты или новые версии уже имеющихся пакетов.
Эта же программа и поставит Вам Cygwin, опять предлагая самому распорядиться, что устанавливать, а что нет. Инсталляция создаст Вам директории, обычные для файловой иерархии Unix — bin, usr, sbin, и т.д., поэтому удобно поместить их все в какую-то одну директорию, дабы они не путались с Вашими виндозными папками.
И как этим всем пользоваться
Когда Вы запустите Cygwin, вы увидите окошко с консолью, подобное обычной виндозной консоли, command.com в Win9x или cmd.exe в NT. Но нет! У Вас на Windows запустился славный потомок юниксовых командных интерпретаторов, который и пыталась имитировать command.com со своими BAT файлами. Bash и его старший брат sh — это тот клей, который связывает в одно целое Unix систему, он может вполне полноправно называться языком программирования, то есть на нем можно писать.
Несколько основных команд и их аналоги в Windows
ls = dir — просмотреть содержание директории;
cd = chdir — перейти в другую директорию;
cp = copy — скопировать файл;
mv = mv — переместить/переименовать файл;
rm = del — удалить файл;
mkdir = mkdir — создать директорию;
pwd — вывести текущую директорию.
Запомните — большое «A» уже не равно маленькому «a», символ \ теперь должен быть заменен на /. Команда cd / в Cygwin приведет Вас в ту директорию, где находятся bin, usr и т.д. В Unix выше / уже ничего нет, а в Cygwin для того, чтобы путешествовать по виндозным партициям, можно пользоваться командой cd //c/ (cd //d/MyDir и т.д.).
Одна из удобнейших особенностей Bash — это автодополнение (autocompletion). Создадим командой cat несколько файлов:
cat > first_file ENTER
введите что-то, затем Ctr-C,
и то же самое для другого файла:
cat > second_file ENTER.
Убедитесь, что файлы существуют:
Теперь наберите любую команду, например, ls, и первую букву первого файла. Нажмите TAB. Bash сам допишет имя файла. Если файлы начинаются одинаково, например, file_one и file_two, Bash допишет только file_ и подождет, пока Вы введете еще одну букву, чтобы устранить многозначность.
Несколько примеров использования некоторых утилит.
Допустим, у Вас есть текстовый файл in.txt. Посчитать количество слов в нем Вы можете так:
Найти строки, содержащие последовательность символов Larry:
grep «Larry» in.txt
Разбить строки на слова, заменяя пробелы на символы конца строки:
cat in.txt | gawk «gsub(» +»,»\n»)»
Команда gawk «gsub(» +»,»\n»)» значит — заменить один или больше пробелов (» +») на символ конца строки («\n»).
Сделать то же самое, но с возможностью удобного просмотра (PageUp, PageDown, выйти — q)
cat in.txt | gawk «gsub(» +»,»\n»)» | less
Отсортировать строки (слова):
cat in.txt | gawk «gsub(» +»,»\n»)» | sort | less
Убрать одинаковые строки (слова):
cat in.txt | gawk «gsub(» +»,»\n»)» | sort | uniq | less
cat in.txt | gawk «gsub(» +»,»\n»)» | sort | uniq | wc -l
Убрать одинаковые строки (слова), считая их количество:
cat in.txt | gawk «gsub(» +»,»\n»)» | sort | uniq —count | less
Опять отсортировать, получив, таким образом, частотный словник текста:
cat in.txt | gawk «gsub(» +»,»\n»)» | sort | uniq —count | sort -r | less
То же самое, с выводом результатов в текстовый файл:
cat in.txt | gawk «gsub(» +»,»\n»)» | sort | uniq —count | sort -r > out.txt
То же самое, с сохранением промежуточных результатов в файле intermediate.txt:
cat in.txt | gawk «gsub(» +»,»\n»)» | tee intermediate.txt | sort | uniq —count | sort -r | less
Теперь, используя возможности Bash, можно повторить эту команду для нескольких файлов. Набирайте скрипт прямо в консоли, переходя на новую строку так, как это напечатано в статье, — Bash поймет, что команда не закончена и сменит приглашение на «>»:
for file in *.txt; do
cat $file | gawk «gsub(» +»,»\n»)» | sort | uniq —count | sort -r > $file.out
Вот так. Простые задачи — простые решения.
Чтобы узнать, как работает та или иная команда, можно запустить ее с ключом —help либо воспользоваться командой man (manual) — man awk, man grep. Выйти из man можно с помощью q.
ЧТО ЕЩЕ ЕСТЬ В CYGWIN
Простой (люди говорят — 1 день обучения) язык программирования для обработки текстов, один из предков Perl
Генератор парсеров на С
Генератор парсеров на С
Язык программирования. Собственно к утилитам Gnu прямого отношения не имеет, некоторое время поддерживался корпорацией Sun. Можно сделать cd /usr/share/tk8.0/demos и запустить программку widget -./widget. Вы увидите демонстрацию возможностей Tk — расширения Tcl для создания GUI.
Программа для сравнения файлов
И очень много другого. Просто зайдите в bin и посмотрите, что у Вас там лежит. Залежи пакетов можно найти на сайте http://www.hirmke.de/software/develop/gnuwin32/cygwin/porters/Hirmke_Michael/GNUWin32-contents.html. Также много информации и линков по теме есть на сайте Cygnus http://sources.redhat.com/cygwin/.
Как настроить CYGWIN
Во-первых, Вам совсем не обязательно запускать Bash, если Вас пугает консоль. Вы можете пользоваться всеми программками из Far»а, Windows Commander»а и т.д., нужно только прописать пути к директории bin. В Windows 9x это делается в файле autoexec.bat, в NT в My Computer / Properties / Environment к переменной окружения PATH нужно добавить дорожку к bin.
Для более удобной работы в Bash советую сделать следующее: если директории Cygwin у Вас находятся в c:\cygwin, создать директорию c:\cygwin\root (mkdir /root) и внести строку в файл cygwin.bat, что лежит в c:\cygwin:
В директории root следует создать 2 файла, начинающихся с точки: .inputrc и.bashrc. Оба файла исполняются Bash при запуске, .inputrc отвечает за то, чтобы правильно работали все клавиши, а.bashrc содержит различную информацию. Как пример приведу свой.bashrc:
alias ls=»ls —color»
alias untar=»tar xvf»
echo Welcome to CygWin!
Первая строка указывает путь Bash. Так в Юниксе поступают со всеми интерпретаторами. К примеру, если у вас есть скрипт hello.pl на Perl, а сам perl в /usr/bin, Вы можете написать в первой строке:
и запускать его так:
Таким образом, можно запускать программы, не заботясь о том, на чем они написаны.
PS1 — это переменная, в которой хранится Bash prompt, приглашение к работе, как его еще называют. \w — это текущая директория.
После такого добавления к PATH можно делать так, как это привыкли делать Windows пользователи:
Далее я использую синонимы, или alias»ы. К примеру, команда ls по умолчанию не раскрашивает свой вывод в зависимости от того, чем являются файлы, для этого ее нужно запустить с ключом —color. Это неудобно. Командой alias ls=»ls —color» я решаю эту проблему. Теперь ls значит ls —color. Не обязательно использовать то же имя команды, можно сделать ll=»ls —color» — и пользоваться новой командой ll. Примерно так я делаю, создавая команду untar для распаковки tar архивов, вместо того, чтобы каждый раз набирать tar xvf. В alias можно помещать и pipes (трубы, конвейеры): alias sort_un_sort=» sort | uniq —count | sort -r «.
В действительности простор для обустройства рабочего места здесь безграничен, и мои примеры примитивны и просты. Есть еще функции, интерактивные команды в.bashrc, функции, запускающиеся из приглашения (prompt).
Надеюсь, у Вас появилось желание поэкспериментировать с Cygwin. Ваши комментарии присылайте на
Для того чтобы писать приложения под Unix не обязательно его устанавливать (под словом Unix я буду продразумевать все *nix системы). Это утверждение звучит довольно-таки парадоксально, но это действительно так, и в данной статье я попытаюсь вас в этом убедить.
Если вы не являeтесь истинным Unix-гуру, то для того чтобы написать пару приложений под эту ОС или скомпилировать существующие программы вам вовсе не нужно устанавливать Unix . Для данных целей отлично подойдет эмулятор Unix . Существует много замечательных программ, превосходно справляющихся с этой задачей, например: UWin , MinGW , Cygwin и др.
Для компиляции простых программ подойдет и MinGW , но для более сложных он не пригоден. Uwin является более продвинутым эмулятором, но его функциональность значительно уступает другому более популярному эмулятору Cygwin .
Cygwin — это очень функциональный, бесплатный эмулятор Unix . Он распространяется в виде одного-единственного файла (setup.exe ), пусть вас не вводит в заблуждение размер этого файла (
300 kb ), это не сам Cygwin , а только его инсталлятор. Все необходимые утилиты и библиотеки придется скачивать отдельно в процессе установки, или указать в качестве источника локальный каталог, если необходимые файлы у вас уже есть.
Cygwin включает в себя огромное количество разнообразных утилит и библиотек, многие из которых вам наверняка никогда и не понадобятся, но при установке Cygwin позволяет выбрать только нужные вам компоненты. Таким образом, если вы хотите только скомпилировать программу, то вам будет достаточно установить компилятор GCC , набор необходимых библиотек и утилиту make . Лично я установил все приложения, так как Cygwin позволяет легко «избавиться» от них в любое время. На самом деле Cygwin состоит всего из одного файла cygwin1.dll , все остальное является программными пакетами GNU , специально перекомпилированными для работы с Cygwin .
Думаю, что с установкой проблем не возникло. Теперь давайте разберем несколько тонкостей в настройке и в использовании Cygwin . После установки структура папки, в которую была проинсталлированна программа, будет напоминать структуру *nix системы. Для того чтобы запустить Cygwin , достаточно запустить BAT-файл , cygwin.bat , который расположен в корневом каталоге Cygwin (под корневым каталогом будем подразумевать папку, в которую проинсталлирован Cygwin , в дальнейшем отсчет будем вести именно с этого каталога). После запуска BAT-файла перед вами предстанет консольное приложение. Это и есть тот самый Bash , который является связующим звеном между Unix и Windows . Bash — это не просто аналог cmd.exe . Bash — это полноправный язык программирования, на котором можно писать скрипты для выполнения различных задач. Именно этим он в корне отличается от cmd.exe (command.com ).
Приглашение Bash , практически не отличается от cmd.exe (
должна смениться на / ). После этого наберите команду «dir «, или «ls «, для того чтобы просмотреть содержимое корневого каталога. Думаю, что сейчас вам стало понятно, что такое корневой каталог.
Описать все команды в данной статье я не могу, поэтому перейдем сразу к самому важному этапу, собственно для которого мы и установили Cygwin . Попытаемся скомпилировать какую-нибуддь программу. Для компиляции я выбрал программу Htop (http://freshmeat.net/projects/htop/), это усовершенствованная версия стандартной программы top , которая является консольным менеджером процессов. Первым делом необходимо распаковать архив. Это вы можете сделать как в Windows , так и непосредственно в Cygwin . В Cygwin это делается командой:
tar zxf htop-0.6.tar.gz
Разумеется, что в данный момент вы должны находиться в том же каталоге, где находится архив htop-0.6.tar.gz . После распаковки заходим в созданный каталог htop-0.6 и выполняем три стандартных команды для компиляции приложения.
./configure
make
make install
Вот и все, компиляция закончена. Смело набираем команду htop и любуемся результатом. Получисшийся «EXE»шник» находиться в каталоге /usr/local/bin/ .
Теперь давайте попробуем сами написать простенькую программу (Hello world ) и скомпилировать ее с помощью GCC . Для начала нам нужно написать саму программу, сделаем это с помощью программы cat . Введите команду cat new.c , где new.c имя файла, содержащего исходный код. После выполнения команды напишите следующий код:
#include
int main() <
printf(«Hello World»);
return 1;>
После того, как код введен нажмите Ctrl+C . Теперь скомпилируем его с помощью GCC . Делается это командой:
Gcc new.c -o new.exe
В той же директории, где находился new.c появится еще один файл — new.exe . Запустив его, вы увидите ожидаемую надпись «Hello World «.
На этом можно было бы завершить статью, но я решил еще рассказать о графической среде Cygwin , чтобы потом не возвращаться к этой теме. Я думаю, вы обратили внимание на то, что при установке пакетов Cygwin предлагает установить оболочки Gnome и KDE . На самом деле это не просто оболочки, а их библиотеки, которые необходимы для запуска приложений. Так, например, графическая версия знаменитого редактора emacs , будет запускаться прямо под Windows , как будто это win32-приложение . Чтобы не быть голословными давайте попробуем этот самый Emacs запустить. Делается это командой:
Вот что мы увидим.
Как видите, все прекрасно запускается и работает. Но так бывает не у всех. Графическая среда очень капризна. Поэтому нужно уметь ее конфигурировать. Документации по настройке X-сервера в интернете очень много и вы без труда сможете ее найти.
В конце хотелось бы напомнить, что как бы ни был хорош Cygwin , он всего лишь эмулятор. А как известно копия не может быть лучше оригинала, поэтому если вы хотите стать настоящим Unix-гуру, не поленитесь поставить полноценный unix-дистрибутив. На мой взгляд начинать лучше с Linux . Из всевозможных дистрибутивов рекомендую вам Slackware .
Если вы иногда все же используете операционную систему от Microsoft, вам, наверное, очень нужны некоторые утилиты Linux в windows. Было бы очень удобно использовать стандартные утилиты командной строки для фильтрации вывода, сортировки, фильтрации и потокового редактирования, в Windows, где такие функции не поддерживаются.
Для реализации этого есть несколько решений. В этой статье мы рассмотрим только два из них. Первое, о котором вы, возможно, уже слышали, а может, уже и используете — Cygwin. Второе, нечто более интересное и новое — Cash. Начнем с Cygwin. В последней версии Windows 10 появилось и третье решение — возможность нативно, с помощью специальной подсистемы. Об этом читайте в отдельной статье.
Cygwin — это набор инструментов, обеспечивающий Unix подобную среду в Windows. Здесь нельзя запускать уже существующие утилиты для Linux. Для того чтобы выполнить linux команду из Windows Cygwin, ее нужно сначала перекомпилировать.
Тем не менее пересобрано уже достаточно много программного обеспечения. Cygwin даст вам Linux подобную среду со многими утилитами, к которым вы уже привыкли в Linux. Его можно использовать как для стандартных утилит таких как команда cp windows, так и для подключения к удаленному серверу по ssh.
Установка Cygwin
Как и другие программы Windows, Cygwin устанавливается с помощью установщика в формате.exe. Скачать его можно на официальном сайте.
Для установки вам придется пройти несколько шагов мастера, по умолчанию программа будет установлена в C:\Cygwin:
С установочным пакетом не поставляется полный набор окружения. Оно будет загружено в процессе установки. В этом окне нужно выбрать сервер для загрузки компонентов:
Затем необходимо выбрать пакеты, которые нужно загрузить и установить. Доступно довольно-таки много программ и они рассортированы по категориям. Если вы не знаете нужен ли вам тот или иной пакет, оставьте значение по умолчанию. Вы сможете установить их потом:
Осталось только нажать Next для начала загрузки и завершения установки.
Добавление Cygwin в Path
После завершения установки, чтобы выполнить команды linux в windows с максимальным удобством, желательно добавить папку с исполняемыми файлами Cygwin в переменную среды Path.
Вы можете запустить терминал Cygwin, кликнув по ярлыку на рабочем столе. Откроется терминал с папкой C:\Cygwin\bin
Здесь можно выполнять все нужные linux команды в windows, но вы не сможете их выполнить в другой директории или другом терминале.
Чтобы решить эту проблему, необходимо добавить папку Cygwin в переменную Path. Откройте окно свойства системы с помощью сочетания клавиш Win+Pause/Break, затем выберите пункт Дополнительные параметры системы на левой панели:
На вкладке дополнительно выберите Переменные среды :
Найдите в списке переменную Path и нажмите Изменить :
Добавьте в конец строки вот такую запись:
Обратите внимание, что все пути должны быть разделены точкой с запятой. Осталось нажать Ок и тестировать выполнение Linux команд в Windows.
Это кое-что совсем новое. Утилита с открытым исходным кодом Cash, это кроссплатформенная реализация командной оболочки Linux на JavaScript. Цель этого проекта обеспечить более гибкую, простую альтернативу Cygwin, для тех кто хочет чувствовать себя в WIndows, как и в Linux.
Установив Cash, вы сможете выполнить linux команду из windows в любом эмуляторе терминала, в том числе в стандартной командной строке Windows.
На данный момент поддерживаются только некоторые утилиты linux для windows. Вот список поддерживаемых:
Так как утилита еще находится на стадии разработки, то список команд Linux в Windows будет постоянно увеличиваться. Вы также можете проголосовать за добавление команд которые вам нужны.
Вот как все работает:
Что самое интересное, вы можете комбинировать Windows и Linux команды. Например, вы можете выполнить:
ipconfig | grep IPv4 | sort
И команда правильно отработает. Сначала выполнится ipconfig, а затем результат будет отфильтрован с помощью Grep.
Установка Cash в Windows
Я буду устанавливать Cash в Windows 10. Это делается очень просто и работает также в более старых версиях Windows. Поскольку Cash основан на JavaScript для его работы необходимо установить Node.js. Скачать Node.js можно на официальном сайте:
После того как Node.js Будет установлена, можно переходить к установке Cash. Его можно установить в нескольких режимах:
- Ручное использование Cash — нужно выполнить cash чтобы начать запускать linux команды
- Глобальное использование — linux команды доступны во всех терминалах windows
- Установить только некоторые команды — вы можете выбрать компоненты для установки если не хотите ставить все
Для установки Cash глобально откройте командную строку Windows с помощью Win+R:
npm install cash-global -g
Установка может занять несколько минут, в зависимости от скорости вашего интернет-соединения. После завершения установки вы можете сразу тестировать Linux команды в Windows.
Выводы
Как я уже говорил, проект Cash еще на стадии разработки и есть вероятность что вы столкнетесь с ошибками. Не забудьте сообщить о найденных ошибках разработчикам, чтобы помочь улучшить проект. Если для вас критична стабильность лучше использовать старый добрый Cygwin.
Нам, пользователям Linux нечасто понадобиться использование unix команд в windows и такие инструменты. Мы можем использовать Linux команды напрямую в нашей системе. Но если вы по каким-либо причинам не можете установить Linux, и все же хотите использовать linux команды, это может быть отличным решением.
Об авторе
Основатель и администратор сайта сайт, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.
Эта статья будет полезна начинающим пользователям Cygwin. Начнем с того, что нам для начала нужно ответить на простой вопрос. Что же такое Cygwin? Cygwin — это UNIX-подобная среда и интерфейс командной строки для Microsoft Windows. В системе Microsoft Windows уже существует подобный интерфейс cmd. Вызвать командную строку можно сочетанием клавиш Win+R. Но зачастую большую часть работы Windows пользователям приходится делать вручную. По другую сторону Linux пользователь уже давно написал bash-скрипт и сидит пьет пиво в сторонке от автоматизированного рабочего процесса.
Так что же мешает сделать это и в ОС Windows? Правильно, абсолютно ничего не мешает. Но для этого нужны дополнительные программы и библиотеки. Программа Cygwin расширяет возможности стандартной командной строки Windows, позволяя автоматизировать некоторые процессы и разрабатывать программы для Linux и других систем.
Программу Cygwin можно качать с официального сайта: Ссылка на 32 битную версию программы и Ссылка на 64 битную версию программы .
Выбираем нужную версию, скачиваем и запускаем исполнительный файл setup-x86.exe и setup-x86_64.exe соответственно.
Окно установки 64 битной версии программы
Окно выбор способа установки
Окно выбора пакетов
Окно установки 32 битной версии программы выглядит точно так же как и 64 битной. Следующим шагом будет окно выбора. Откуда устанавливать или скачивать программу. Всего есть три варианта. Первый вариант Install from Internet (downloaded files will be kept for future re-use) установка из интернета причем загруженные файлы будут храниться до следующего повторного использования. Второй вариант Download Without Installing скачать без установки. Третий вариант Install from Local Directory установка из локального каталога. Т.к. у нас нет локальной копии и нам нужно установить то выбираем первый вариант. Следующее окно будет выбор пути установки. Рекомендую выбрать системный диск, к примеру у меня путь установки Cygwin это C:\cygwin64. Следующее окно это выбор пути где будут храниться временный файлы которые будут скачиваться в процессе установки. У меня это C:\cygwin64\package. Потом нужно выбрать как скачивать через прокси или напрямую. Следующим шагом будет выбор репозитория скачки выбираем любой попавшийся или тот что по умолчанию и жмем Далее. После нажатия кнопки далее начнется процесс скачивания основных конфигов. Следом вы сможете выбрать что устанавливать. Чтобы выбрать пакет нужно нажать Skip около названия пакета. Список пакетов которые вам пригодятся:
- gcc-core (в разделе Devel)
- gcc-g++ (в разделе Devel)
- make (в разделе Devel)
- cmake (в разделе Devel)
- automake (в разделе Devel)
- wget (в разделе Web)
- libiconv (в разделах Devel и Libs)
- openssh (в разделе Net)
- nano (в разделе Editors)
- bash (из раздела Base)
- base-cygwin (из раздела Base)
- base-files (из раздела Base)
- cygwin (из раздела Base)
- file (из раздела Base)
- gzip (из раздела Base)
- login (из раздела Base)
- mintty (из раздела Base)
- openssl (из раздела Base)
- run (из раздела Base)
- tar (из раздела Base)
- vim-minimal (из раздела Base)
- cron (из раздела Admin)
- shutdown (из раздела Admin)
- git (все пакеты из раздела Devel)
Мне не симпатизировал ни цвет фона, ни встроенный шрифт и цвет текста поэтому я кастомизировал его. На этих словах я закончу эту статью.
Теги: cygwin, для новчиков
Cygwin (Сигвин) представляет собой набор Unix программ и библиотек, скомпилированных под ОС Windows и размещенных в файловой системе таким же образом как и в настоящем Unix-е. Благодаря этому мы получаем полный эквивалент Unix среды начиная от bash и вплоть до компиляторов gcc, которыми без особого портирования исходного кода можно собирать проекты для выполнения в Windows (достаточно большое количество кросс-платформенных приложений используют такой подход, так как он наиболее простой и быстрый).
Установка Cygwin
Скачать Cygwin для 32х или 64х — разрядной версии можно на сайте https://cygwin.com/install.html . Установка весьма простая — можно просто нажимать «Далее» до окна выбора пакетов (Select Packages). Тут перед вами откроется база пакетов, причем некоторые из них уже будут отмечены для остановки (базовы), другие вы можете отметить сами. Для того, что бы отметить пакет на установку, нужно ввести его имя в поле «Search», затем раскрыть категории и найти этот пакет. Потом нажать «Skip», в результате чего вместо Skip должна появится версия, которая будет установлена. Для дальнейшей работы отметьте пакет wget , остальное можно пока не трогать. Пакеты можно будет доустановить или удалить в любой момент времени, просто повторно запустив установщик, но это не совсем удобно, поэтому дальше в статье я расскажу как устанавливать пакеты из командной строки (для этого нам и понадобится wget).
По дефолту cygwin запускается в стандартном терминале Windows, что не очень удобно.
Терминал Console
Установка пакетов для python с помощью pip
Пакеты в python часто устанавливаются с помощью pip, которого нету в репозиториях сигвина.
Поэтому его нужно установить отдельно:
MAN-страницы для функций libc
Cygwin уже содержит мануал-страницы для стандартных команд, однако man для функций libc можно установить отдельно:
Кстати Cygwin в некотором роде связан со встраиваемыми системами, так как использует Newlib реализацию libc, которая как известно повсеместно применяется в разных ARM-тулчейнах.
Vim в Cygwin
Настройка выполняется в файле.vimrc в домашней директории: