onde os objetos compartilhados vão após a instalação e como descobrir seus nomes

0

Acabei de instalar a biblioteca SFML usando o seguinte comando: apt-get install sfml-dev

e depois de instalá-lo eu fui para a minha pasta /usr/lib para descobrir qual é o nome do objeto compartilhado real (para que eu saiba o que dizer ao meu compilador o que usar).

Mas não havia nada com "SFML" no nome lá.

Havia, no entanto, uma pasta SFML no meu diretório / usr / include.

Então, onde estão os arquivos de objetos compartilhados, se eles não estão no meu diretório /usr/lib ?

Como posso encontrá-los, para que eu possa descobrir o que dizer ao compilador para usar?

g++ *.cpp -o exe -l ?

    
por stav 13.06.2017 / 19:46

1 resposta

0
gcc -print-search-dirs

mostra todos os caminhos de busca que o compilador usa.

dpkg -L libsfml-dev

mostra todos os arquivos instalados pelo pacote; para encontrar a biblioteca real, é necessário executar dpkg -L no pacote que realmente contém a biblioteca ( libsfml-dev tem várias dependências de biblioteca).

Em qualquer caso, as bibliotecas geralmente acabam em /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) atualmente nos derivados do Debian, ou seja, /usr/lib/x86_64-linux-gnu em PCs comuns de 64 bits. Você realmente não precisa se preocupar com isso com seu compilador, ele já sabe onde encontrar as bibliotecas - você só precisa descobrir quais -l parâmetros fornecer.

    
por 13.06.2017 / 20:30

Tags