|
OpenBSD Packages and Ports Installation and upgrading of packages and ports on OpenBSD. |
|
Thread Tools | Display Modes |
|
|||
How to debug a port
Thunar (the Xfce's file manager) have been dumping .core files and I am willing to investigate.
Note: I set my /etc/mk.conf so that my ports tree is read-only. Everything produced by the tree goes in /var/ports I have several, a lot, of questions: 1. I need a binary build with debug symbols so that I can use it with [cmd]gdb[/cmd] and the .core file, but can I use a .core file produced by a binary without debug symbols ? 2. How to make a binary with debug symbols. I tried # cd /usr/ports/x11/xfce4/thunar && make DEBUG_FLAGS=-g ?3. By doing # make install I am sure /usr/local/bin/thunar binary will be replaced ?4. I don't want to install the new binary. I just want to use it for the debugging part: % gdb /var/ports/obj/ ... /.libs/thunar thunar.core . Is this reasonnable? By the way, thunar seems to be a shared library.5. How to properly clean the ports tree ? # make clean && make clean=depends && make clean=dist && pkg_delete -a is ok ?Thank you. |
|
|||||
Quote:
Quote:
Quote:
Quote:
Quote:
/usr/ports/pobj/thunar-1.6.12 at 6.2-release, or /usr/ports/pobj/thunar-1.6.14 at -current. Your "clean" example both removed too much and too little. You don't need to delete the package from your system -- unless you install it, which you state you do not want to do. And your clean skipped the plist registration (in /usr/ports/plist). A terrific resource for port testing and debugging is the Port Testing Guide, a chapter in the Porter's Handbook. http://www.openbsd.org/faq/ports/testing.html Last edited by jggimi; 4th March 2018 at 03:40 PM. Reason: ports are not packaged in $WRKDIR |
|
|||
OK jggimi, thank you.
I already edited /etc/mk.conf regarding those variables, using [oman=7]ports[/man]. I am using a makefile instead of Makefile now. Simply adding a line Code:
CFLAGS="-g" I used make fake and managed to re-trigger the crash with the thunar from the fake install directory but no .core dumped. So I make install it and now I have my .core file and the binary to debug it. I have little (as in "not much but already successfuly used it") experience in gdb. I can see the backtrace. I guess the next step is to run the debuggable binary in gdb, add breakpoints, read variables then edit sources file, rebuild ,repeat ... The porter's guide is my next read for sure. Thank you. P.S: Along the way, I was hoping to get .core file from the thunar in the OBSD package. Just for research purposes ... So I removed the thunar from /usr/local/bin and run # pkg_check to repair the installation from the packages provided by OBSD. I believe the package used was the one I built myself which defeated the purpose.
|
Tags |
debug, ports |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Security Security hole in Sudo's debug option closed | J65nko | News | 0 | 31st January 2012 10:24 PM |
The right way to build an OpenBSD port with debug symbols | WeakSauceIII | OpenBSD Packages and Ports | 7 | 20th April 2009 12:40 PM |
SSH on port 443 | maxrussell | General software and network | 4 | 6th April 2009 05:16 AM |
Trying to Debug C++ Compile Error [Shibboleth] on FreeBSD | starbuck | Programming | 4 | 15th January 2009 10:30 PM |
port forwarding | ikevmowe | OpenBSD Security | 13 | 21st November 2008 06:03 PM |