How to install a package that contains Ubuntu kernel debug symbols?
The default Ubuntu kernel -generic
package doesn't seem to have symbols in it.
I'm trying to avoid compile a kernel with debug info manually.
Does Ubuntu provide a package with kernel debug symbols?
-
First create a
ddebs.list
using:echo "deb http://ddebs.ubuntu.com $(lsb_release -cs) main restricted universe multiverse" | sudo tee /etc/apt/sources.list.d/ddebs.list
-
Then add the GPG key for
ddebs.ubuntu.com
:wget -O - http://ddebs.ubuntu.com/dbgsym-release-key.asc | sudo apt-key add -
-
Then run:
sudo apt-get update
-
Then install the symbols package using:
sudo apt-get install linux-image-`uname -r`-dbgsym
This is rather huge (>680MB), so prepare for a wait while you download it.
I use the Linux kernel debug symbols for tools like systemtap
on the kernel.
For 16.04+:
GPG key import
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C8CAB6595FDFF622
Add repository config
codename=$(lsb_release -c | awk '{print $2}')
sudo tee /etc/apt/sources.list.d/ddebs.list << EOF
deb http://ddebs.ubuntu.com/ ${codename} main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-security main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-updates main restricted universe multiverse
deb http://ddebs.ubuntu.com/ ${codename}-proposed main restricted universe multiverse
EOF
sudo apt-get update
sudo apt-get install linux-image-$(uname -r)-dbgsym
(credit to Ubuntu Wiki)
I tried Colin Ian King's answer and it did not work for me. I found out I must add two extra lines in /etc/apt/sources.list.d/ddebs.list
Edit the file via
sudo nano /etc/apt/sources.list.d/ddebs.list
and add the two lines below
deb http://ddebs.ubuntu.com trusty-updates main restricted universe multiverse
deb http://ddebs.ubuntu.com trusty-proposed main restricted universe multiverse
Replace trusty
with your version that you get when you execute
lsb_release -cs