Saya mencoba melihat bagaimana program bekerja dengan menjalankannya oleh debugger 'Qt Creator'. Untuk orientasi yang lebih baik, saya juga ingin melihat utilitas sistem (inti) sepenuhnya di jendela tumpukan panggilan seperti yang saya gunakan dari MS Visual Studio 6.0, tidak hanya untuk melihat kode rakitan mereka. Untuk utilitas, debugger 'Qt Creator' hanya menampilkan bahwa simbol debug tidak tersedia. (Kadang-kadang, sistem menghasilkan laporan bug untuk pengembangnya; dialog laporan bug telah meminta menginstal simbol seperti itu hanya untuk program tertentu.) Bagaimana saya bisa mendapatkan simbol debug inti? (Tanpa menerjemahkan keseluruhan versi Ubuntu. Saya menggunakan 'Update Manager' untuk menginstal pembaruan secara teratur. My
/ sys / kernel / debug / x86direktori hanya berisi satu file kosong. Saya belum menemukannya di 'pusat perangkat lunak Ubuntu' dan saya juga tidak melihat apakah beberapa paket di http://packages.ubuntu.com/precise/x11/ adalah yang saya cari.) Terima kasih!
Jawaban:
Paket di Ubuntu menyimpan simbol debuggingnya dalam repo yang terpisah. Untuk mengunduh simbol debugging ini, jalankan (salin dan tempel):
untuk menambahkan tautan repo ke
/etc/apt/sources.list.d/ddebs.list
(Ini memudahkan untuk menghapus repo). Atau, Anda juga dapat menyalin masing-masingdeb
tautan ke Sumber Perangkat Lunak dan menambahkannya dari sana (Perhatikan bahwa Anda mungkin harus mengganti$(lsb_release -cs)
dengan rilis Ubuntu yang sedang Anda jalankan).Untuk mengunduh simbol debugging
package
, Anda dapat menginstalpackage-dbgsym
atau, dalam beberapa kasuspackage-dbg
,. Perhatikan bahwa paket dari PPA tidak memiliki simbol debugging yang tersedia dari repo, dan bahwa tanggung jawab pengelola untuk menyediakan paket yang berisi simbol debugging, biasanya dalam paket yang bernamapackage-dbg
.Simbol debugging dipasang di
/usr/lib/debug
, meskipungdb
secara otomatis membaca dalam simbol debugging jika tersedia dan bahwa Anda tidak perlu secara manual menentukan lokasi untuk melihat. Tergantung pada versi Kompatibilitas Debhelper dari paket, simbol debugging mungkin terletak di folder dengan nama ID bangun yang terletak di dalam.build-id
(>= 9
), atau mungkin terletak relatif di mana executable akan diinstal (< 9
). Misalnya, jika Anda mencari lokasi simbol debugging/usr/bin/zip
, dan versinya kurang dari 9, itu akan masuk/usr/lib/debug/usr/bin/zip
.Untuk menghapus semua simbol debugging dan repo, jalankan
sudo apt-get remove \.*-dbgsym
untuk menghapus semua-dbgsym
paket, dansudo rm /etc/apt/sources.list.d/ddebs.list
untuk menghapus repo simbol debugging.sumber
Menambahkan ke jawaban saircot859. Anda juga harus menginstal kunci GPG untuk repositori seperti dijelaskan di sini: https://wiki.ubuntu.com/Debug%20Symbol%20Packages
sumber
sudo apt install ubuntu-dbgsym-keyring
.Menambah jawaban Evans: Di Ubuntu 18.04 dan yang lebih baru, Anda menggunakan perintah
untuk menginstal kunci GPG. (Menurut https://wiki.ubuntu.com/Debug%20Symbol%20Packages )
sumber