|
View:
New views
6 Messages
—
Rating Filter:
Alert me
|
|
|
Debug info in debian/ubuntu gnustep-examplesHello GNUstep community
I'm new to this list; First of all great environment/framework/tools, KUDOS to all DEVs. I'm becoming a fan/user of WindowMaker/GNUstep in ubuntu 9.04 I hope you get me a little help/direction/url trying to get the debug symbols when compiling the examples from gnustep-examples source in ubuntu package after downloading the source of this package i compiled fine with make and run with openapp ApplicationName.app but trying to debug with gdb, it states that no debug info was know for every program so i research in gnustep wiki for a HowTo cook and found that the command make messages=yes produces this info, but this didn't worked for gnustep-examples programs only for a simple HelloWorld program (using Foundation NSLog, etc) Thanks in advance _______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@... http://lists.gnu.org/mailman/listinfo/discuss-gnustep |
|
|
Re: Debug info in debian/ubuntu gnustep-examplesEduardo Osorio Armenta schrieb:
> Hello GNUstep community > > I'm new to this list; First of all great environment/framework/tools, KUDOS > to all DEVs. > > I'm becoming a fan/user of WindowMaker/GNUstep in ubuntu 9.04 > > I hope you get me a little help/direction/url trying to get the debug > symbols when compiling > the examples from gnustep-examples source in ubuntu package > > after downloading the source of this package i compiled fine with > make > and run with > openapp ApplicationName.app > > but trying to debug with gdb, it states that no debug info was know for > every program > so i research in gnustep wiki for a HowTo cook > and found that the command > > make messages=yes > > produces this info, but this didn't worked for gnustep-examples programs > only for a simple HelloWorld program (using Foundation NSLog, etc) > As far as I know all GNUstep components get compiled with debug information enabled. The simplest way to start debuging a GNUstep application is via debugapp ApplicationName.app or openapp --debug ApplicationName.app which is what I prefer. Hope this helps Fred _______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@... http://lists.gnu.org/mailman/listinfo/discuss-gnustep |
|
|
Re: Debug info in debian/ubuntu gnustep-examplesOn 21 Oct 2009, at 19:39, Fred Kiefer wrote: > Eduardo Osorio Armenta schrieb: >> Hello GNUstep community >> >> I'm new to this list; First of all great environment/framework/ >> tools, KUDOS >> to all DEVs. >> >> I'm becoming a fan/user of WindowMaker/GNUstep in ubuntu 9.04 >> >> I hope you get me a little help/direction/url trying to get the debug >> symbols when compiling >> the examples from gnustep-examples source in ubuntu package >> >> after downloading the source of this package i compiled fine with >> make >> and run with >> openapp ApplicationName.app >> >> but trying to debug with gdb, it states that no debug info was know >> for >> every program >> so i research in gnustep wiki for a HowTo cook >> and found that the command >> >> make messages=yes That prints verbose output while bulding ... it doesn't build for debugging. What you want is ' make debug=yes >> produces this info, but this didn't worked for gnustep-examples >> programs >> only for a simple HelloWorld program (using Foundation NSLog, etc) >> > > As far as I know all GNUstep components get compiled with debug > information enabled. Yes, but unless you do 'make debug=yes' they are also compiled with optimisation ... which makes it difficult to interpret the output of gdb reliably as the optimiser will change the exact control flow in the program (so the line displayed in gdb can jump about unpredictably) and will remove many variables (so gdb can't examine them). So for any code you intend to debug using gdb, you should build with 'make debug=yes' which turns off optimisation. > The simplest way to start debuging a GNUstep application is via > > debugapp ApplicationName.app > > or > openapp --debug ApplicationName.app > > which is what I prefer. > > Hope this helps > Fred > > > _______________________________________________ > Discuss-gnustep mailing list > Discuss-gnustep@... > http://lists.gnu.org/mailman/listinfo/discuss-gnustep _______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@... http://lists.gnu.org/mailman/listinfo/discuss-gnustep |
|
|
Re: Debug info in debian/ubuntu gnustep-examplesRichard Frith-Macdonald schrieb:
> On 21 Oct 2009, at 19:39, Fred Kiefer wrote: >>> make messages=yes > > That prints verbose output while bulding ... it doesn't build for > debugging. > What you want is > ' > make debug=yes > >>> produces this info, but this didn't worked for gnustep-examples programs >>> only for a simple HelloWorld program (using Foundation NSLog, etc) >>> >> >> As far as I know all GNUstep components get compiled with debug >> information enabled. > > Yes, but unless you do 'make debug=yes' they are also compiled with > optimisation ... which makes it difficult to interpret the output of gdb > reliably as the optimiser will change the exact control flow in the > program (so the line displayed in gdb can jump about unpredictably) and > will remove many variables (so gdb can't examine them). Thank you for that tip. I was always annoyed by seeing the same line twice in gdb because of the instruction reordering. But then I never took the time to think about getting rid of that problem, so perhaps I was not annoyed enough. Fred _______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@... http://lists.gnu.org/mailman/listinfo/discuss-gnustep |
|
|
Re: Debug info in debian/ubuntu gnustep-examplesOn Thu, Oct 22, 2009 at 1:05 AM, Fred Kiefer <fredkiefer@...> wrote:
> Richard Frith-Macdonald schrieb: >> On 21 Oct 2009, at 19:39, Fred Kiefer wrote: >>>> make messages=yes >> >> That prints verbose output while bulding ... it doesn't build for >> debugging. >> What you want is >> ' >> make debug=yes >> >>>> produces this info, but this didn't worked for gnustep-examples programs >>>> only for a simple HelloWorld program (using Foundation NSLog, etc) >>>> >>> >>> As far as I know all GNUstep components get compiled with debug >>> information enabled. >> >> Yes, but unless you do 'make debug=yes' they are also compiled with >> optimisation ... which makes it difficult to interpret the output of gdb >> reliably as the optimiser will change the exact control flow in the >> program (so the line displayed in gdb can jump about unpredictably) and >> will remove many variables (so gdb can't examine them). > > Thank you for that tip. I was always annoyed by seeing the same line > twice in gdb because of the instruction reordering. But then I never > took the time to think about getting rid of that problem, so perhaps I > was not annoyed enough. gcc 4.5.0 (current active development branch) should have better support for debugging optimized programs http://gcc.gnu.org/wiki/Var_Tracking_Assignments and the var-tracking-assignments-*-branch have been merged into mainline. _______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@... http://lists.gnu.org/mailman/listinfo/discuss-gnustep |
|
|
Re: Debug info in debian/ubuntu gnustep-examplesHi
i tried: eduardo@ubutulaptop904:~/gnustep-examples-1.2.0/gui/Calculator$ make debug=yes messages=yes and got: This is gnustep-make 2.0.6. Type 'make print-gnustep-make-help' for help. Making all for app Calculator... cd .; \ /usr/share/GNUstep/Makefiles/mkinstalldirs ./obj /usr/share/GNUstep/Makefiles/mkinstalldirs Calculator.app/. gcc main.m -c \ -MMD -MP -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -D_REENTRANT -fPIC -g -Wall -DDEBUG -fno-omit-frame-pointer -DGSWARN -DGSDIAGNOSE -Wno-import -g -fno-strict-aliasing -fexceptions -fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS -fgnu-runtime -fconstant-string-class=NSConstantString -I. -I/home/eduardo/GNUstep/Library/Headers -I/usr/local/include/GNUstep -I/usr/include/GNUstep \ -o obj/main.o gcc CalcBrain.m -c \ -MMD -MP -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -D_REENTRANT -fPIC -g -Wall -DDEBUG -fno-omit-frame-pointer -DGSWARN -DGSDIAGNOSE -Wno-import -g -fno-strict-aliasing -fexceptions -fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS -fgnu-runtime -fconstant-string-class=NSConstantString -I. -I/home/eduardo/GNUstep/Library/Headers -I/usr/local/include/GNUstep -I/usr/include/GNUstep \ -o obj/CalcBrain.o gcc CalcFace.m -c \ -MMD -MP -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -D_REENTRANT -fPIC -g -Wall -DDEBUG -fno-omit-frame-pointer -DGSWARN -DGSDIAGNOSE -Wno-import -g -fno-strict-aliasing -fexceptions -fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS -fgnu-runtime -fconstant-string-class=NSConstantString -I. -I/home/eduardo/GNUstep/Library/Headers -I/usr/local/include/GNUstep -I/usr/include/GNUstep \ -o obj/CalcFace.o gcc -rdynamic -Wl,-Bsymbolic-functions -shared-libgcc -fexceptions -fgnu-runtime -o Calculator.app/./Calculator \ ./obj/main.o ./obj/CalcBrain.o ./obj/CalcFace.o -L/home/eduardo/GNUstep/Library/Libraries -L/usr/local/lib -L/usr/lib -lgnustep-gui -lgnustep-base -lpthread -lobjc -lm /usr/share/GNUstep/Makefiles/mkinstalldirs Calculator.app/Resources echo "OLD_GNUSTEP_STAMP_ASTRING = _NSApplication---" > ./Calculator.app/stamp.make (echo "{"; echo ' NOTE = "Automatically generated, do not edit!";'; \ echo " NSExecutable = \"Calculator\";"; \ echo " NSMainNibFile = \"\";"; \ echo " GSMainMarkupFile = \"\";"; \ if [ "" != "" ]; then \ echo " NSIcon = \"\";"; \ fi; \ echo " NSPrincipalClass = \"NSApplication\";"; \ echo "}") >Calculator.app/Resources/Info-gnustep.plist if [ -r "CalculatorInfo.plist" ]; then \ plmerge Calculator.app/Resources/Info-gnustep.plist "CalculatorInfo.plist"; \ fi pl2link Calculator.app/Resources/Info-gnustep.plist ./Calculator.app/Resources/Calculator.desktop for f in Calculator.app.tiff; do \ if [ -f $f -o -d $f ]; then \ cp -fr $f ./Calculator.app/Resources/; \ else \ echo "Warning: $f not found - ignoring"; \ fi; \ done -------------------------------------------------------------------------------------------- then eduardo@ubutulaptop904:~/gnustep-examples-1.2.0/gui/Calculator$ debugapp Calculator.app GNU gdb 6.8-debian Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i486-linux-gnu"... (no debugging symbols found) (gdb) i'll try another examples from this package, hope more luck Regards On Thu, Oct 22, 2009 at 12:11 AM, Richard Frith-Macdonald <richard@...> wrote:
_______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@... http://lists.gnu.org/mailman/listinfo/discuss-gnustep |
| Free embeddable forum powered by Nabble | Forum Help |