Comment 10 for bug 336320

Revision history for this message
Martin Olsson (mnemo) wrote :

About debug symbols. There is several ways to get them:

1) install PACKAGE-dbg packages usually work pretty well (if such a debug package exists)

2) register the ddebs repo in sources.list abd then install PACKAGE-dbgsym (which pretty much always exists)

3) rebuild DEBs with full debug symbols like giovanni did. Basically what you do is this:
mkdir my_code ; cd my_code
apt-get source PROGRAM_PACKAGE
cd PROGRAM-VERSION
DEB_BUILD_OPTIONS="nostrip noopt" debuild -us -uc -b
sudo dpkg -i ../SOME_NEWLY_CREATED_PACKAGE.deb

4) in certain extreme situations you might also want to pass -rdynamic to the linker.

PS. Another nice thing to know about is the parallel parameter you can pass in DEB_BUILD_OPTIONS to compile the code in parallel on all your CPU cores. This usually speeds things up significantly for big packages like kernel and mesa etc. Do do that you'd use something like:

DEB_BUILD_OPTIONS="parallel=8" debuild -us -uc -b

(where is 8 is the number of CPUs you have on the current machine)

Finally, there are some packages that don't implement the latest debian packing standard and then the makefiles might not be up to snuff. If the makefile doesn't recognize some option you can sometimes invoke "debian/rules" directly (possibly under fakeroot and then prefix it with stuff like MAKEFLAGS=-j6 CFLAGS="-g3 -O0" LDFLAGS=-rdynamic This kind of stuff should really not be necessary though.