среда, 11 января 2012 г.

Mac OS X: устанавливаем Irssi 0.8.15

Я обновил свой MacBook на MacBook Air 11-inch, Mid 2011. Так как я любитель посидеть в IRC чатах, мне понадобилась давно любимая программа Irssi. Люблю я ее еще с тех времен как впервые установил Slackware. Но OS X Lion не Linux и во время установки у меня были некоторые сложности. Так как Irssi зависит от других программ, начинаем их устанавливать по очереди:

1. Устанавливаем pkg-config-0.25
$ ./configure
$make
$sudo make install


2. Устанавливаем libffi-3.0.0
$ ./configure
$make
$sudo make install


3. Устанавливаем gettext-0.18.1.1
$ ./configure
$make
$sudo make install


Если возникнет ошибка:
stpncpy.c:34: error: expected declaration specifiers or ‘...’ before numeric constant
stpncpy.c:34: error: expected ‘)’ before ‘!=’ token
stpncpy.c:34: error: expected ‘)’ before ‘?’ token
make[4]: *** [stpncpy.lo] Error 1
make[3]: *** [all] Error 2
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1


Нам нужно открыть файл ./gettext-tools/gnulib-lib/stpncpy.c:
И изменить строку номер 34
__stnpcpy (char *dest, const char *src, size_t n)
на
__stpcpy (char *dest, const char *src, size_t n)

4. Устанавливаем glib-2.31.2
$ ./configure
$make
$sudo make install


Если возникнет ошибка:
gconvert.c:65:2: error: #error GNU libiconv not in use but included iconv.h is from libiconv
make[4]: *** [gconvert.lo] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


Редактируем файл ./glib/gconvert.c (строка 65). В данном файле нужно удалить секцию с ошибкой
#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
#error GNU libiconv not in use but included iconv.h is from libiconv
#endif


5. И наконец устанавливаем irssi-0.8.15. Я во время сборки отключил Perl, IPv6 и SSL. Данные функции мне пока не нужны
$ ./configure --with-perl=no --disable-ipv6 --disable-ssl
$ make
$ sudo make install

Комментариев нет:

Отправить комментарий