“make” não encontra uma biblioteca instalada

2

Eu estou tentando usar o make para compilar purple-facebook , um plugin para pidgin .

Requer json-glib , que eu instalei, mas sempre que eu tento compilar, ele retorna

fatal error: json-glib/json-glib.h: No such file or directory.

Eu tentei criar um link simbólico em /usr/include denominado json-glib vinculando a json-glib-1.0 , mas isso resulta na saída repetitiva

gcc: warning: /var/cache/apt/archives/libjson-glib-1.0-0-dbg_1.0.2-1_armhf.deb: linker input file unused because linking not done.

Estou executando o Raspbian, uma distro baseada no Debian. O que posso fazer para conseguir que isso compile?

    
por Precipitato 21.07.2016 / 06:49

2 respostas

1

Eu não sou um usuário Rasbian, mas estou assumindo que você acabou de instalar o JSON GLib bibliotecas . Você também precisa dos arquivos de cabeçalho. Estes estão disponíveis no pacote json-glib-dev .

Como um conselho geral: se você se encontra movendo coisas (bibliotecas, binários) por aí como root, ou criando links simbólicos aqui e ali, então é altamente provável que você esteja fazendo algo errado e que haja uma maneira melhor de fazer isso.

    
por 21.07.2016 / 07:28
1

Instale o pacote libjson-glib-dev . Ele e suas dependências contêm os arquivos que você precisa.

json-glib/json-glib.h está abaixo de /usr/include/json-glib-1.0 . então o link simbólico que você criou não é útil. Remova-o (pode confundir configure scripts). Para obter o compilador para procurar por arquivos de cabeçalho em /usr/include/json-glib-1.0 , você precisa passar a opção -I /usr/include/json-glib-1.0 . Mas não faça isso manualmente: chame pkg-config , que inclui esta e outras opções necessárias. Você precisa garantir que os sinalizadores passados para o compilador C incluam 'pkg-config --cflags json-glib-1.0' e os sinalizadores de link incluam 'pkg-config --libs json-glib-1.0' .

A execução de ./autogen.sh deve gerar makefiles com as opções apropriadas. Se você o executou antes de ter todas as bibliotecas necessárias instaladas, execute ./configure novamente; isso chamará pkg-config com as opções apropriadas e gerará um novo Makefile . Em seguida, digite make para construir.

Para construir o pacote Debian, instalar as dependências e executar dpkg-buildpackage deve ser suficiente (pelo menos sob jessie, eu não verifiquei se as bibliotecas necessárias existem em wheezy). Se isso não funcionar, copie e cole todos os comandos que você executou e a saída completa deles.

    
por 25.07.2016 / 02:26