Di mana file lib boost saya?


21

Saya menggunakan boost. Saya menginstalnya menggunakan sudo apt-get install. Sekarang saya tidak dapat menemukan file lib boost di sistem file saya.

Saya ingin memasukkan jalur lib dalam proyek Qt saya. grepping terlalu lama :( Saya menemukan menyertakan /usr/include/boost. Tapi saya juga perlu tahu jalur perpustakaan.


1
sudo apt-get install ... apa?
Eric Carvalho

1
@EricCarvalholibboost-dev
Chani

Jawaban:


14

Saya tidak yakin apakah ini yang Anda cari, tetapi Anda mungkin ingin menginstalnya 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

34

Jika Anda menggunakan mesin 64bit maka Anda mungkin akan menemukan file di bawah /usr/lib/x86_64-linux-gnu/

Lihat juga ini untuk penjelasan untuk apa folder ini.


2

Bagi saya, jalur pustaka boostsudah ada /usr/lib64, dan hanya itu yang harus saya tambahkan ke jalur pustaka agar kode dapat dibangun dengan benar.

Itu juga sangat mungkin bahwa lokasi perpustakaan adalah keputusan sewenang-wenang seorang dev membangun komputer saya. Juga perhatikan saya tidak menggunakan Ubuntu, tetapi sistem Linux cukup mirip sehingga tidak masalah. Solusi saya mungkin sama sekali tidak membantu siapa pun.

Jika locatetersedia untuk Anda di sistem Anda, maka coba ini untuk mencari boost:

locate boost | fgrep .so   #find lib files      (/usr/lib64 for me)
locate boost | fgrep .hpp  #find include files  (/usr/include for me)

1

libboost-dev tergantung pada libboost1.46-dev (Ubuntu 12.04) atau libboost1.49-dev (Ubuntu 12.10). Kedua paket juga menginstal banyak file /usr/share/boost-build/. Mungkin itu yang Anda cari.


0

Untuk mendaftar semua file yang diinstal untuk suatu paket dan dependensi, gunakan debfoster

sudo apt-get install debfoster

dan skrip seperti ini. Dalam contoh ini saya telah menggunakan paketlibboost-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)\
        }\
    }'

Untuk membuat daftar hanya *.sofile

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($|\.)\"")\
        }\
    }'
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.