“pkg-config --modversion glib-2.0” relata versão antiga

1

Eu tenho o Ubuntu 14.04 32 bit. Eu estou tentando compilar um aplicativo do código-fonte. Isso me dá uma mensagem de erro durante a vinculação no processo make , embora ./autogen.sh e ./configure tenham passado sem erros. Eu tenho esse erro undefined reference to g_variant_parse_error_quark eu li que essa função g_variant_parse_error_quark adicionado ao glib2 em 2,39. Eu verifiquei os pacotes instalados e descobri que a versão do libglib é 2.40.0 no meu sistema. No entanto

 pkg-config --modversion glib-2.0

informa 2.38.2

Parece que tenho pelo menos dois glib2 diferentes instalados. Eu poderia ter instalado manualmente o glib2 da fonte no passado.

Como posso corrigir esse problema e permitir que meu sistema use a última biblioteca correta?

    
por kenn 25.06.2014 / 23:20

1 resposta

4

Como eu suponho que resultou de múltiplas bibliotecas conflitantes. Quando eu corro

 echo $PKG_CONFIG_PATH 

retornou linha vazia

Então eu procurei por

  locate glib-2.0.pc

e eu tenho

  /usr/lib/i386-linux-gnu/pkgconfig/glib-2.0.pc
  /usr/lib/i386-linux-gnu/pkgconfig/spice-client-glib-2.0.pc
  /usr/local/lib/pkgconfig/glib-2.0.pc

Eu também corro

  pkg-config --debug --modversion glib-2.0

para descobrir quais diretórios foram procurados

Eu procurei nos arquivos glib-2.0.pc e verifiquei os números da versão.

Localizei o arquivo glib-2.0.pc correto

então eu corro

  export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig/

depois, em seguida, ./autogen.sh e make

correu bem

    
por kenn 26.06.2014 / 14:45