Construindo o shell Fish 2.0 sob o Cygwin

1

Eu queria ter um fish shell sob minha instância do cygwin e eu queria tanto que eu tentei construí-lo, mas sem sorte.

Eu passei por todos os pré-requisitos, como instalar autoconf, clang, ncurses e outras coisas necessárias.

autoconf e ./configure foram todos bons, mas quando tento make , o código não é compilado.

Eu vi que há outro tópico em this mas é para a versão mais antiga 1.23.

Então alguém fez isso funcionar?

Aqui estão os erros da minha compilação:

g++ -g -O2 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -fno-exceptions -Wall -DLOCALEDIR=\"/usr/local/share/locale\" -DPREFIX=L\"/usr/local\" -DDATADIR=L\"/usr/local/share\" -DSYSCONFDIR=L\"/usr/local/etc\" -DBINDIR=L\"/usr/local/bin\"    -c -o builtin.o builtin.cpp
In file included from builtin_set_color.cpp:13:0,
             from builtin.cpp:397:
fallback.h:97:7: error: previous declaration of ‘char* tparm_solaris_kludge(char*, ...)’ with ‘C++’ linkage
/usr/include/ncurses.h:820:63: error: conflicts with new declaration with ‘C’ linkage
<builtin>: recipe for target 'builtin.o' failed
make: *** [builtin.o] Error 
    
por almendar 13.06.2013 / 14:40

2 respostas

2

A proposta de Yaakov é na verdade bem próxima, mas para compilar o fish 2.0 com sucesso, você precisaria comentar / remover a linha ofensiva de fallback.h e invocar a configuração com:

./configure CXXFLAGS='-I/usr/include -I/usr/include/ncursesw'

após o qual você deve ser capaz de make e make install

    
por 15.10.2013 / 13:33
0

Você obteve um falso negativo em um teste de configuração porque <term.h> não foi encontrado; você precisa passar CPPFLAGS=-I/usr/include/ncurses como um argumento para configurar para que isso funcione.

    
por 14.06.2013 / 19:51