Acessando bibliotecas usando a opção GCC -L -- piling campo com gcc campo com libraries camp askubuntu Relacionado O problema

accessing libraries using gcc -l option


0
vote

problema

português

/ usr / lib / x86_64-linux-GNU contém mais de 1000 bibliotecas úteis. Se espera ser capaz de acessá-los usando a opção -l no GCC onde -lfoo significa "inserir biblioteca libfoo.so ".

Mas muitas bibliotecas comuns não têm .so no final de seus nomes; Por exemplo, ABCDEFGHIJKLMNABCDEFGHIJKLMN8 não funciona (apesar de aparecer em Uxteen Makefiles para software livre). A razão é que tudo o que é fornecido é

      libtiff.so.5 which is a soft link to     libtiff.so.5.3.0     

Não há loading channel cliprdr tcp_connect: getaddrinfo (Nom ou service inconnu) Error: protocol security negotiation or connection failure Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. 0 , que seria um link suave para loading channel cliprdr tcp_connect: getaddrinfo (Nom ou service inconnu) Error: protocol security negotiation or connection failure Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. 1 . Da mesma forma loading channel cliprdr tcp_connect: getaddrinfo (Nom ou service inconnu) Error: protocol security negotiation or connection failure Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. 2 -lpng 'Se fine porque ele fornece

  loading channel cliprdr tcp_connect: getaddrinfo (Nom ou service inconnu) Error: protocol security negotiation or connection failure Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged. 3   

Por que todas as bibliotecas não podem ser fornecidas nesse formulário?

english

/usr/lib/x86_64-linux-gnu contains over 1000 useful libraries. One expects to be able to access them using the -l option in gcc where -lfoo means "insert library libfoo.so".

But many common libraries don't have .so at the end of their names; for example -ltiff does not work (in spite of appearing in umpteen Makefiles for free software). The reason is that all that is provided is

    libtiff.so.5 which is a soft link to     libtiff.so.5.3.0  

there is no libtiff.so which would be a soft link to libtiff.so.5. Likewise -ljpeg' does not work (and there are dozens of others), but -lpng` if fine becuase it provides

    libpng.so which is a soft link to     libpng16.so which is a soft link to     libpng16.so.16.34.0 

Why can't all libraries be provided in that form?

        
 
 

Lista de respostas

0
 
vote

Eu encontrei a resposta. O softlink libtiff.so é fornecido apenas pelo pacote de desenvolvimento da LIBTIFF (que também inlusa os arquivos .h, etc. Há uma presunção de que, se você estiver compilando o código e incluir - Ltiff na receita, você deve estar compilando um aplicativo usando o Libtiff, que é realmente verdade, mas isso não significa que você tenha algum interesse na interface TIFF.

Na verdade, eu estava compilando xsane, que é um frontend ao sistema sane (tentando identificar um erro suspeito), e Tiff é apenas um dos seus muitos backends, e eu não conseguia nem passar "configure" sem Primeiro, baixando as coisas de desenvolvimento da LiFtiff. Isso é ridículo; A vida seria muito mais simples se esse softlink fosse incluído como uma questão de curso no pacote principal de qualquer biblioteca de aplicação.

 

I found the answer. The softlink libtiff.so is only provided by the libtiff development package (which also inludes the .h files, etc. There is a presumption that if you are compiling code and include -ltiff in the recipe you must be compiling an application using libtiff, which is indeed true, but that does not mean you have any interest in the tiff interface.

In fact, I was compiling xsane, which is a frontend to the sane system (trying to identify a suspected bug), and tiff is just one of its many backends, and I couldn't even get past 'configure' without first downloading the libtiff development stuff. That is ridiculous; life would be much simpler if that softlink were included as a matter of course in the main package of any library of application.

 
 

Perguntas relacionadas

2  Como sincronizar a biblioteca da minha banshee para a biblioteca do meu Android? [fechado]  ( How to synchronize my banshees library to my androids library ) 
. FECHADO. Esta questão é off-tópico . Atualmente não está aceitando respostas. Quer melh...

1  Como fazer uso de Runtimeservice no Ubuntu sob o modo de inicialização UEFI?  ( How to make use of runtimeservice in ubuntu under uefi boot mode ) 
Como fazer uso de Runtimeservice no Ubuntu sob o modo de inicialização UEFI? Eu quero fazer uso do Runtimeservice do BIOS UEFI, SetVariable () ou GetVarribl...

0  Instalação incompleta de bibliotecas Poco C ++  ( Uncomplete install of poco c libraries ) 
Eu recentemente liguei para usar bibliotecas Poco C ++ para criar um cliente de email simples e eu precisei usar SecureSMTPClientSession classe, mas o compi...

50  Instalando pacotes blas e lapack  ( Installing blas and lapack packages ) 
Como instalar o blas e o amp; Lapack no ubuntu 14.04? Quando estou tentando instalar esses pacotes com apt-get install BLAS : Error occurred Unable to l...

2  Como posso saber se meu aplicativo no meu ambiente de desktop está carregando os módulos, bibliotecas, etc?  ( How can i know if my an application on my desktop environment is loading other d ) 
Eu li esta questão e é Resposta Sobre vários ambientes de desktop e como eles podem afetar o desempenho do sistema e imaginava: Como eu sei se estou usa...

1  Não é possível executar o programa no NetBeans 7.3  ( Cant run program in netbeans 7 3 ) 
Eu recentemente instalei o Ubuntu 12.04 e instalei o NetBeans 7.3 (não a versão do Ubuntu, diretamente do site). Estou tentando executar um programa básico de...

0  Kubuntu 20.04 Ping Problema: libnnettle.so.6: Não é possível abrir o arquivo de objeto compartilhado: Nenhum arquivo ou diretório  ( Kubuntu 20 04 ping trouble libnettle so 6 cannot open shared object file no s ) 
Eu apenas atualizei de Kubuntu 18.04 a 20.04. Tudo foi bem, exceto quando eu ping um endereço na sessão local, onde recebo esta mensagem: ping: error while...

0  A biblioteca S2N não vincula com o braço  ( S2n library doesnt link with arm ) 
Quando estou tentando compilar a biblioteca S2N da Amazon (Opnen Source TLS Implementation) no ARM64, isso me dá o erro hidden symbol 'pthread_atfork' in /...

23  Como faço para usar gráficos.h no Ubuntu?  ( How do i use graphics h in ubuntu ) 
Existe algum compilador baseado em Linux que suporta /var/www/8 biblioteca? Eu quero implementar programas gráficos, por favor, deixe-me saber se existe alg...

-1  O que eu faço depois de executar fazer, usar o LCD-OpenCV-Simulator?  ( What do i do after running make to use lcd opencv simulator ) 
Eu sou novo para o Ubuntu e preciso executar um simulador LCD Nosso professor nos deu sem nos dar informações suficientes sobre como realmente usá-lo. O pro...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.