Respuestas:
Así es como logré compilar pescado en Cygwin.
Primero, asegúrese de tener los siguientes paquetes de cygwin:
libncurses-devellibiconvautoconf (no es realmente una dependencia del pescado, pero lo necesitamos para un paso posterior)Luego, descargue la última fuente de http://fishshell.com (utilicé fish-1.23.1.tar.gz ). Extraiga la fuente a su directorio de elección y cd a él:
$ tar zxvf fish-1.23.1.tar.gz -C /usr/local/src/
$ cd /usr/local/src/fish-1.23.1/
configure.acpara eliminar cheques paraiconvAhora por alguna razón, ./configureno se puede detectar libiconvcorrectamente. Para solucionar el problema, eliminamos la verificación (especificaremos la lib manualmente más adelante). Para hacerlo, editamos configure.acy eliminamos cheques para iconv_open. La búsqueda iconv_openrevela 3 ocurrencias; Los comentamos a todos. Entonces, de:
AC_SEARCH_LIBS( iconv_open, iconv, ....)
Cambiamos a:
#AC_SEARCH_LIBS( iconv_open, iconv, ....)
./configureA continuación, reconstruimos el ./configurescript ejecutando y autoconfluego ejecutamos el script de configuración:
$ autoconf && ./configure
Makefilepara incluir la ruta correcta acurses.hOtro problema al que me enfrenté fue curses.h: gcc no pudo encontrarlo. Una búsqueda rápida reveló que está dentro /usr/include/ncurses.
El Makefiletiene una trayectoria para hardcoded incluyen en CFLAGS, pero señala que /usr/local/include/ncursesen su lugar.
Entonces, editamos Makefiley cambiamos:
CFLAGS = -I/usr/local/include/ncurses -std=c99 ....
a
CFLAGS = -I/usr/include/ncurses -std=c99 ...
LDFLAGSpara vincular libiconv, y estamos listos para compilar / instalar.Finalmente, exportamos lo necesario LDFLAGSpara vincular iconv, luego compilamos e instalamos.
$ 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>
translate_color': set_color.c:116: warning: implicit declaration of function strcasecmp 'set_color.c: En la función main': set_color.c:333: error: ERR' no declarado (primer uso en esta función)
libncurses-devely cambiado la -Iruta cambiada en el `Makefile (paso 5)?
curses.hno se incluye ( ERRse define allí). ¿Puedes echar un vistazo /usr/include/ncurses/y ver si está allí?
Verifique los problemas de pescado # 680 y # 319 en GitHub, hay todo lo que necesita para compilar pescado en cygwin.
#define HAVE_NCURSES_H 1el archivo de encabezado generadoconfig.h(por las mismas razones indicadas anteriormente)