“UbuntuHelp:DebuggingProgramCrash”的版本间的差异
来自Ubuntu中文
小 (正在重定向到 UbuntuWiki:DebuggingProgramCrash) |
小 |
||
(未显示同一用户的4个中间版本) | |||
第1行: | 第1行: | ||
#REDIRECT [[UbuntuWiki:DebuggingProgramCrash]] | #REDIRECT [[UbuntuWiki:DebuggingProgramCrash]] | ||
− | |||
<!-- | <!-- | ||
− | + | <ol><li>Check if the package has a debugging version available. In general, debugging packages will be named with a `-dbg` suffix | |
− | + | </li><li>If not, you can generally* build one this way:</li></ol> | |
− | + | * Something to keep in mind: if you would like to create a build you're going to need to have the relevant deb-src lines in your /etc/apt/sources.list | |
− | + | <ol><li>Install the development scripts: <pre><nowiki> | |
− | + | ||
− | <pre><nowiki> | + | |
sudo apt-get install devscripts | sudo apt-get install devscripts | ||
</nowiki></pre> | </nowiki></pre> | ||
− | + | </li><li>Install the build-time dependencies for the package: <pre><nowiki> | |
− | <pre><nowiki> | + | |
sudo apt-get build-dep <package> | sudo apt-get build-dep <package> | ||
</nowiki></pre> | </nowiki></pre> | ||
− | + | </li><li>Build .debs for debugging: <pre><nowiki> | |
− | <pre><nowiki> | + | |
export DEB_BUILD_OPTIONS="debug nostrip noopt" | export DEB_BUILD_OPTIONS="debug nostrip noopt" | ||
sudo apt-get source -b <package> | sudo apt-get source -b <package> | ||
</nowiki></pre> | </nowiki></pre> | ||
− | + | </li><li>Install the needed .debs (they will be in the current working directory if the build succeeded): <pre><nowiki> | |
− | <pre><nowiki> | + | |
sudo debi <package>*.changes | sudo debi <package>*.changes | ||
</nowiki></pre> | </nowiki></pre> | ||
− | + | <ol><li>Now you make a [[UbuntuWiki:Backtrace|Backtrace]]. | |
− | + | </li><li>You can also run [[UbuntuWiki:Valgrind|Valgrind]], if the program crashes with a "Segmentation fault" or "Bus error". | |
− | + | </li><li>Optionally, you may be asked to produce an [[UbuntuWiki:Strace|Strace]].</li></ol> | |
* most of the packages support the build of debugging version in this way. If that doesn't work for a package you can open a bug against it. | * most of the packages support the build of debugging version in this way. If that doesn't work for a package you can open a bug against it. | ||
− | |||
− | |||
− | |||
--> | --> | ||
{{From|https://help.ubuntu.com/community/DebuggingProgramCrash}} | {{From|https://help.ubuntu.com/community/DebuggingProgramCrash}} |
2009年5月12日 (二) 16:22的最新版本
点击翻译: |
English |
请不要直接编辑翻译本页,本页将定期与来源同步。 |