Bagaimana cara mengetahui paket apa yang ada di dalamnya tanpa menggunakan Google?

29

Saya sering menemukan diri saya ingin menginstal sesuatu, tetapi saya tidak yakin paket apa yang ada di dalamnya. Ini adalah kejadian yang sangat umum bagi saya:

$ make html
sphinx-build -b djangohtml -d _build/doctrees   . _build/html
make: sphinx-build: Command not found
make: *** [html] Error 127

$ sudo apt-get install sphinx
E: Unable to locate package sphinx

$ sudo apt-get install sphinx-build
E: Unable to locate package sphinx-build

googles

$ sudo apt-get install python-sphinx

Apakah ada cara yang lebih baik?

Kit Sunde
sumber

Jawaban:

31

Instal file-apt dan jalankanapt-file update

Kemudian gunakan apt-file search sphinx-builduntuk mencari paket yang berisi file yang bernama sphinx-build

Florian Diesch
sumber
Yang bagus! Saya selalu terpaksa packages.ubuntu.com , tapi baris perintah aplikasi selalu terbaik: D
Egil
15

Ubuntu cukup pintar. Coba jalankan saja.

$ sphinx-build

The program 'sphinx-build' is currently not installed.  You can install it by typing:
sudo apt-get install python-sphinx
BPK
sumber
2
Adakah yang tahu persis bagaimana "kecerdasan" ini diterapkan di Ubuntu? misalnya, paket mana yang menyediakan ini?
entropo
5
@entropo: Paket yang menyediakan fungsionalitas ini adalah "command-not-found".
Tweek
3
Ini harus digunakan dengan sangat hati-hati sebagai perintah yang tidak bekerja dari skrip atau makefile dapat berfungsi jika dipanggil dari shell Anda (misalnya karena skrip menggunakan $ PATH lain atau Anda memiliki alias dengan nama yang sama di shell Anda) dan bisa memiliki efek yang tidak diinginkan.
Florian Diesch
3

Saya tidak tahu apakah apt-get bisa melakukannya, tapi saya lebih suka menggunakan aptitude.

Menggunakan perintah pencariannya, Anda mendapatkan daftar paket yang berisi string yang Anda cari, namun itu masih belum sepenuhnya menjawab pertanyaan Anda, karena tidak mengungkapkan paket mana yang berisi biner yang Anda cari.

Contoh:

sudo aptitude search sphinx
p   gstreamer0.10-pocketsphinx      - lightweight speech recognition - GStreamer
p   libpocketsphinx-dev             - lightweight speech recognition - developme
p   libpocketsphinx1                - lightweight speech recognition - library  
p   libsphinx-search-perl           - Perl module for Sphinx search engine      
p   libsphinx2-dev                  - speech recognition library - development k
p   libsphinx2g0                    - speech recognition library                
p   libsphinxbase-dev               - Sphinx base libraries - development files 
p   libsphinxbase1                  - Sphinx base libraries                     
p   pocketsphinx-hmm-tidigits       - lightweight speech recognition - TIDIGITS 
p   pocketsphinx-hmm-wsj1           - lightweight speech recognition - WSJ1 acou
p   pocketsphinx-lm-wsj             - lightweight speech recognition - WSJ langu
p   pocketsphinx-utils              - lightweight speech recognition - command-l
p   python-pocketsphinx             - lightweight speech recognition - Python mo
p   python-pocketsphinx-dbg         - lightweight speech recognition - Python mo
p   python-repoze.sphinx.autointerf - Sphinx extension that auto-generates API d
p   python-sphinx                   - tool for producing documentation for Pytho
p   python-sphinxbase               - Sphinx base libraries - Python module     
p   python-sphinxbase-dbg           - Sphinx base libraries - Python module (deb
v   python2.6-pocketsphinx          -                                           
v   python2.6-pocketsphinx-dbg      -                                           
v   python2.6-sphinxbase            -                                           
v   python2.6-sphinxbase-dbg        -                                           
v   python2.7-pocketsphinx          -                                           
v   python2.7-pocketsphinx-dbg      -                                           
v   python2.7-sphinxbase            -                                           
v   python2.7-sphinxbase-dbg        -                                           
p   sphinx2-bin                     - speech recognition utilities              
p   sphinx2-hmm-6k                  - speech recognition library - default acous
p   sphinxbase-utils                - Sphinx base libraries - utilities         
p   sphinxsearch                    - Fast standalone full-text SQL search engine
Tich
sumber
Ini agak membantu, tetapi setelah itu Anda perlu menjalankan sesuatu seperti 'dpkg -L packagename | grep bin 'untuk menemukan perintah apa yang sebenarnya disediakan paket.
Tanath
3

Saya suka menggunakan http://packages.ubuntu.com/ - ada "Cari isi paket" di dalamnya. Debian juga memiliki antarmuka serupa di http://packages.debian.org .

Ini memiliki keuntungan bahwa Anda dapat menggunakannya tanpa akses CLI ke Ubuntu itu sendiri, menjelaskan hal-hal melalui telepon.

liori
sumber
2

Anda dapat menggunakan grup apt atau aptitude yang saya sarankan di atas apt. Ini daftar yang harus dicari

TEPAT

Untuk mencari sesuatu yang mirip dengan perintah yang Anda inginkan: apt-cache search Xmisalnya apt-cache search cheeseakan memberi Anda semua yang terkait dengan keju.
Untuk menunjukkan dependensi dan hal-hal apa saja yang akan Anda lakukan apt-cache show cheese.
Tentu saja untuk menginstal akan apt-get install cheese.

BAKAT

Untuk mencari: aptitude search cheeseyang akan menampilkan daftar yang lebih bagus daripada yang tepat
Untuk menunjukkan: aptitude show cheeseyang lagi akan menampilkan daftar yang lebih bagus dan lebih ramah
Untuk menginstal: aptitude install cheeseuntuk menginstalnya. Lagi bagus.

Juga bakat memberikan informasi yang lebih relevan dengan apa yang Anda cari, misalnya:

apt-cache search phiVS aptitude search phi
apt-cache search sphiVSaptitude search sphi

Jika Anda menginginkan versi GUI, saya sarankan Synaptic Package Manager atau Pusat Perangkat Lunak yang lebih sederhana . Dalam Synaptic Anda dapat mencari sesuatu yang mirip dengan apa yang Anda cari dan itu akan menunjukkannya kepada Anda.

Luis Alvarado
sumber
0

apt-otomatis

auto-aptadalah paket yang sangat berguna, terutama dengan Makefiles dan configureskrip yang merujuk hal-hal yang mungkin tidak Anda miliki dan tidak tahu di mana menemukannya, yang sering rumit dengan file header. Anda terlibat makedalam kasus ini, dan itu mencoba untuk memanggil sphinx-build, tetapi gagal ketika tidak dapat menemukannya.

auto-apt run [...]akan menjalankan perintah yang ditentukan, kemudian memandu Anda melalui menginstal paket yang berisi file yang hilang yang diketahui apt-getdapat ditemukan dan diinstal.

Jadi, panggil saja auto-apt run make htmldan lihat apa yang terjadi :)

Untuk informasi lebih lanjut, lihat dokumentasi untuk apt-otomatis

Hut8
sumber