Onde está o meu arquivo boost lib?

17

Estou usando o boost. Eu instalei usando sudo apt-get install . Agora não consigo encontrar meu arquivo boost boost no meu sistema de arquivos.

Eu quero incluir o caminho da lib no meu projeto Qt. grepping está demorando muito :( Eu encontrei os includes em /usr/include/boost . Mas eu também preciso saber o caminho da biblioteca.

    
por Chani 03.03.2013 / 15:50

5 respostas

13

Não tenho certeza se é isso que você está procurando, mas provavelmente deseja instalar libboost-all-dev .

$ ls /usr/lib/libboost*.so

/usr/lib/libboost_date_time-mt.so
/usr/lib/libboost_date_time.so
/usr/lib/libboost_filesystem-mt.so
/usr/lib/libboost_filesystem.so
/usr/lib/libboost_graph-mt.so
/usr/lib/libboost_graph_parallel-mt.so
/usr/lib/libboost_graph_parallel.so
/usr/lib/libboost_graph.so
/usr/lib/libboost_iostreams-mt.so
/usr/lib/libboost_iostreams.so
/usr/lib/libboost_math_c99f-mt.so
/usr/lib/libboost_math_c99f.so
/usr/lib/libboost_math_c99l-mt.so
/usr/lib/libboost_math_c99l.so
/usr/lib/libboost_math_c99-mt.so
/usr/lib/libboost_math_c99.so
/usr/lib/libboost_math_tr1f-mt.so
/usr/lib/libboost_math_tr1f.so
/usr/lib/libboost_math_tr1l-mt.so
/usr/lib/libboost_math_tr1l.so
/usr/lib/libboost_math_tr1-mt.so
/usr/lib/libboost_math_tr1.so
/usr/lib/libboost_mpi-mt.so
/usr/lib/libboost_mpi.so
/usr/lib/libboost_prg_exec_monitor-mt.so
/usr/lib/libboost_prg_exec_monitor.so
/usr/lib/libboost_program_options-mt.so
/usr/lib/libboost_program_options.so
/usr/lib/libboost_python-mt-py27.so
/usr/lib/libboost_python-mt-py32.so
/usr/lib/libboost_python-py27.so
/usr/lib/libboost_python-py32.so
/usr/lib/libboost_python.so
/usr/lib/libboost_regex-mt.so
/usr/lib/libboost_regex.so
/usr/lib/libboost_serialization-mt.so
/usr/lib/libboost_serialization.so
/usr/lib/libboost_signals-mt.so
/usr/lib/libboost_signals.so
/usr/lib/libboost_system-mt.so
/usr/lib/libboost_system.so
/usr/lib/libboost_thread-mt.so
/usr/lib/libboost_thread.so
/usr/lib/libboost_unit_test_framework-mt.so
/usr/lib/libboost_unit_test_framework.so
/usr/lib/libboost_wave-mt.so
/usr/lib/libboost_wave.so
/usr/lib/libboost_wserialization-mt.so
/usr/lib/libboost_wserialization.so
    
por phipsalabim 03.03.2013 / 17:22
24

Se você estiver em uma máquina de 64 bits, provavelmente encontre os arquivos em /usr/lib/x86_64-linux-gnu/

Veja também this para uma explicação sobre o que é isso pasta é para.

    
por kon psych 17.01.2015 / 05:30
1

O libboost-dev depende do libboost1.46-dev (Ubuntu 12.04) ou libboost1.49-dev (Ubuntu 12.10). Ambos os pacotes também instalam muitos arquivos em /usr/share/boost-build/ . Talvez seja o que você está procurando.

    
por Eric Carvalho 03.03.2013 / 16:18
1

Para mim, o caminho da biblioteca para boost estava em /usr/lib64 , e isso foi tudo o que precisei adicionar ao caminho da minha biblioteca para o código ser compilado corretamente.

Também é inteiramente possível que a localização da biblioteca tenha sido uma decisão arbitrária de um desenvolvedor do meu computador. Observe também que não estou usando o Ubuntu, mas os sistemas Linux são semelhantes o suficiente para não importar muito. Minha solução pode muito bem não ajudar ninguém.

Se locate estiver disponível no seu sistema, tente estes para localizar boost :

locate boost | fgrep .so   #find lib files      (/usr/lib64 for me)
locate boost | fgrep .hpp  #find include files  (/usr/include for me)
    
por Josh Detwiler 30.05.2017 / 19:00
0

Para listar todos os arquivos instalados para um pacote e as dependências, use debfoster

sudo apt-get install debfoster

e um script como este. Neste exemplo, usei o pacote libboost-all-dev

debfoster -d libboost-all-dev |\
    awk '! /depends on/ {\
        for(i=1;i<=NF;i++) {\
            printf "\n>>> %s \n",$i; system("dpkg -L "$i)\
        }\
    }'

Para listar apenas os arquivos *.so

debfoster -d  libboost-all-dev |\
    awk '! /depends on/ {\
        for(i=1;i<=NF;i++) {\
            printf "\n>>> %s \n",$i; system("dpkg -L "$i" | grep -P \".so($|\.)\"")\
        }\
    }'
    
por A.B. 11.08.2015 / 09:02