fish shell 2.1.0 официально поддерживается в Cygwin, его можно установить с помощью установщика по умолчанию.
Как использовать рыбные раковины в Cygwin?
Можно ли использовать раковину рыбы с Cygwin? Я не смог скомпилировать исходный код в cygwin, и я не нашел никаких предварительно скомпилированных пакетов. Есть ли веская причина не иметь рыбу в cygwin?
3 ответа на вопрос
Вот как мне удалось собрать рыбу в Cygwin.
Шаг 1: Убедитесь, что все зависимости установлены
Сначала убедитесь, что у нас есть следующие пакеты cygwin:
libncurses-devel
libiconv
autoconf
(на самом деле это не зависимость от рыбы, но она понадобится нам на более позднем этапе)
Шаг 2: Загрузите и извлеките последний источник
Затем загрузите последний источник с http://fishshell.com (я использовал fish-1.23.1.tar.gz ). Извлеките исходный код в каталог по вашему выбору и перейдите к нему:
$ tar zxvf fish-1.23.1.tar.gz -C /usr/local/src/ $ cd /usr/local/src/fish-1.23.1/
Шаг 3: Изменить, configure.ac
чтобы удалить проверки дляiconv
Теперь по какой-то причине ./configure
не может обнаружить libiconv
должным образом. Чтобы обойти проблему, мы убираем проверку для нее (позже мы укажем lib вручную). Для этого мы редактируем configure.ac
и удаляем чеки на iconv_open
. Поиск iconv_open
выявил 3 случая; мы их все комментируем. Итак, из:
AC_SEARCH_LIBS( iconv_open, iconv, ....)
Мы меняем на:
#AC_SEARCH_LIBS( iconv_open, iconv, ....)
Шаг 4: восстановить и запустить ./configure
Далее мы перестраиваем ./configure
скрипт, запустив и autoconf
запустив скрипт configure:
$ autoconf && ./configure
Шаг 5: Изменить, Makefile
чтобы включить правильный путь кcurses.h
Я столкнулся с еще одной проблемой curses.h
- gcc не смог ее найти. Быстрый поиск показал, что он в /usr/include/ncurses
.
У Makefile
него есть жестко закодированный путь включения CFLAGS
, но он указывает на /usr/local/include/ncurses
него.
Итак, мы редактируем Makefile
и меняем:
CFLAGS = -I/usr/local/include/ncurses -std=c99 ....
в
CFLAGS = -I/usr/include/ncurses -std=c99 ...
Шаг 6: Экспорт LDFLAGS
по ссылке libiconv
, и мы готовы скомпилировать / установить.
Наконец, мы экспортируем необходимые LDFLAGS
ссылки iconv
, затем компилируем и устанавливаем!
$ export LDFLAGS="-liconv" $ make && make install
наслаждаться fish
$ fish Welcome to fish, the friendly interactive shell Type help for instructions on how to use fish me@home /u/l/s/fish-1.23.1>
Похожие вопросы
-
4
Изменить Cygwin Prompt
-
3
Портативный Cygwin?
-
1
При удаленном запуске X через Cygwin, почему мои шрифты ужасны
-
-
4
Лучший способ получить «инструменты командной строки Linux» на Windows
-
2
Как полностью сопоставить сопоставления клавиш моего терминала MacOS X с сопоставлениями клавиш в Wi...
-
6
Как я могу узнать, когда я вошел в Windows?
-
2
Как добавить cygwin / bin в путь поиска в Windows XP?
-
1
Как настроить Ssh / Sshd для входа на основе ключа в Cygwin (Vista) с помощью StrictModes yes
-
7
Cygwin альтернатива для Windows?
-
3
Cygwin под Windows 7 x64