[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Debugging perl with ddd 3.3.1
From: |
Edward_C_Morgan |
Subject: |
Debugging perl with ddd 3.3.1 |
Date: |
Thu, 01 Nov 2001 16:34:57 -0500 |
When I try to debug my perl scripts with ddd version 3.3.1, I find
that I can't highlight or double click the variables to put them in
display like I could for version 3.2.1. gdb works fine however.
Attached is my .ddd/log file.
What settings am I missing?
GNU DDD 3.3.1 (sparc-sun-solaris2.5.1)
Copyright (C) 1995-1999 Technische Universität Braunschweig, Germany.
Copyright (C) 1999-2001 Universität Passau, Germany.
Compiled with GCC 2.95.3 20010315 (release), libstdc++ 2.8.0
Requires X11R5, Xt11R5, Motif 1.2.3 (OSF/Motif Version 1.2.3)
Includes XPM 3.4.11, Athena Panner, DDD core
Built 2001-06-12 by login for exptool make process <unknown>.
$ /opt/exp/lib/ddd/bin/ddd-3.3.1 --perl /sopt/icds/3.0/tools/epic/bin/sdfGen
+ /bin/sh -c 'exec perl -d '\''/sopt/icds/3.0/tools/epic/bin/sdfGen'\'''
# Hello, world!
# Starting Perl...
# Warning: core dumps are disabled
# Running Perl (pid 1613, tty /dev/pts/8)...
# Current language: Perl
# Searching "vsllib/ddd.vsl"...
# Trying "/home/ecm/.ddd/vsllib/ddd.vsl"
# Trying "/opt/exp/share/ddd-3.3.1/vsllib/ddd.vsl"
# Trying "/opt/exp/share/ddd/vsllib/ddd.vsl"
# Trying "/opt/exp/lib/ddd/share/ddd-3.3.1/vsllib/ddd.vsl"
# Trying "/opt/exp/lib/ddd/share/ddd/vsllib/ddd.vsl"
# Trying "/opt/exp/lib/ddd/lib/ddd-3.3.1/vsllib/ddd.vsl"
# Trying "/opt/exp/lib/ddd/lib/ddd/vsllib/ddd.vsl"
# Searching "vsllib/ddd.vsl"..."/opt/exp/lib/ddd/lib/ddd/vsllib/ddd.vsl".
<- "Default die handler restored.\n"
"\n"
"Loading DB routines from perl5db.pl version 1.07\n"
"Editor support available.\n"
"\n"
"Enter h or `h h\' for help, or `man perldebug\' for more help.\n"
"\n"
<- "main::(/sopt/icds/3.0/tools/epic/bin/sdfGen:60):\n"
"60:\t$^W=1 if ( exists $ENV{\'ICDS_DBG_Epic_sdfGen\'} && \n"
"61:\t $ENV{\'ICDS_DBG_Epic_sdfGen\'} eq \'debug\' );\n"
<- " DB<1> "
-> "O ornaments=\"\"\n"
<- " ornaments = \',,,\'\n"
" DB<2> "
-> "$DB::emacs = 1\n"
<- "\n"
" DB<3> "
-> "O compactDump=\n"
<- "Option better cleared using compactDump=\"\"\n"
<- " compactDump = \'\'\n"
" DB<4> "
-> "O veryCompact=\n"
<- "Option better cleared using veryCompact=\"\"\n"
" veryCompact = \'\'\n"
" DB<5> "
-> "p $ENV{\'PWD\'} || `pwd`\n"
<- "/tmp/echung/test\n"
" DB<6> "
-> "L\n"
<- " DB<6> "
# Reading file "/sopt/icds/3.0/tools/epic/bin/sdfGen"...
# Reading file "/sopt/icds/3.0/tools/epic/bin/sdfGen"...done.
# File "/sopt/icds/3.0/tools/epic/bin/sdfGen" 1401 lines, 52632 characters
-> "O hashDepth=\n"
<- "Option better cleared using hashDepth=\"\"\n"
" hashDepth = \'\'\n"
" DB<7> "
-> "O arrayDepth=\n"
<- "Option better cleared using arrayDepth=\"\"\n"
" arrayDepth = \'\'\n"
" DB<8> "
-> "O DumpDBFiles=\n"
<- "Option better cleared using DumpDBFiles=\"\"\n"
" DumpDBFiles = \'\'\n"
" DB<9> "
-> "O DumpPackages=\n"
<- "Option better cleared using DumpPackages=\"\"\n"
" DumpPackages = \'\'\n"
" DB<10> "
-> "O DumpReused=0\n"
<- " DumpReused = \'0\'\n"
" DB<11> "
-> "O compactDump=\n"
<- "Option better cleared using compactDump=\"\"\n"
" compactDump = \'\'\n"
" DB<12> "
-> "O veryCompact=\n"
<- "Option better cleared using veryCompact=\"\"\n"
" veryCompact = \'\'\n"
" DB<13> "
-> "O quote=auto\n"
<- " quote = \'auto\'\n"
" DB<14> "
-> "O HighBit=\n"
<- "Option better cleared using HighBit=\"\"\n"
" HighBit = \'\'\n"
" DB<15> "
-> "O undefPrint=1\n"
<- " undefPrint = \'1\'\n"
" DB<16> "
-> "O globPrint=\n"
<- "Option better cleared using globPrint=\"\"\n"
" globPrint = \'\'\n"
" DB<17> "
-> "O PrintRet=1\n"
<- " PrintRet = \'1\'\n"
" DB<18> "
-> "O UsageOnly=\n"
<- "Option better cleared using UsageOnly=\"\"\n"
" UsageOnly = \'\'\n"
" DB<19> "
-> "O frame=0\n"
<- " frame = \'0\'\n"
" DB<20> "
-> "O AutoTrace=0\n"
<- " AutoTrace = \'0\'\n"
" DB<21> "
-> "O LineInfo=/dev/tty\n"
<- " LineInfo = \'/dev/tty\'\n"
" DB<22> "
-> "O maxTraceLen=400\n"
<- " maxTraceLen = \'400\'\n"
" DB<23> "
-> "O recallCommand=!\n"
<- " recallCommand = \'!\'\n"
" DB<24> "
-> "O ShellBang=!\n"
<- " ShellBang = \'!\'\n"
" DB<25> "
-> "O pager=|less\n"
<- " pager = \'|less\'\n"
" DB<26> "
-> "O tkRunning=\n"
<- "Option better cleared using tkRunning=\"\"\n"
" tkRunning = \'\'\n"
" DB<27> "
-> "O ornaments=us,ue,md,me\n"
<- " ornaments = \'us,ue,md,me\'\n"
" DB<28> "
-> "O signalLevel=1\n"
<- " signalLevel = \'1\'\n"
" DB<29> "
-> "O warnLevel=1\n"
<- " warnLevel = \'1\'\n"
" DB<30> "
-> "O dieLevel=1\n"
<- "Stack dump during die enabled outside of evals.\n"
" dieLevel = \'1\'\n"
" DB<31> "
-> "O inhibit_exit=1\n"
<- " inhibit_exit = \'1\'\n"
" DB<32> "
-> "O ImmediateStop=\n"
<- "Option better cleared using ImmediateStop=\"\"\n"
" ImmediateStop = \'\'\n"
" DB<33> "
-> "O bareStringify=1\n"
<- " bareStringify = \'1\'\n"
" DB<34> "
-> "O RemotePort=\n"
<- "Option better cleared using RemotePort=\"\"\n"
"Too late to set RemotePort, enabled on next \'R\'!\n"
" RemotePort = \'\'\n"
" DB<35> "
-> "# reset\n"
<- "\n"
" DB<36> "
-> "L\n"
<- " DB<36> "
-> "$ENV{\'TERM\'} = \'dumb\'\n"
<- "\n"
" DB<37> "
-> "open(STDIN, \"</dev/pts/8\"); open(STDOUT, \">/dev/pts/8\"); open(STDERR,
\">/dev/pts/8\"); \n"
<- "\n"
" DB<38> "
-> "h detach\n"
<- "detach is not a debugger command.\n"
" DB<39> "
# Starting Perl...done.
# Welcome to DDD 3.3.1 "Blue Gnu" (sparc-sun-solaris2.5.1)
-> "h s\n"
<- "s [expr] Single step [in expr].\n"
" DB<40> "
-> "h stepi\n"
<- "stepi is not a debugger command.\n"
" DB<41> "
-> "h n\n"
<- "n [expr] Next, steps over subroutine calls [in expr].\n"
" DB<42> "
-> "h nexti\n"
<- "nexti is not a debugger command.\n"
" DB<43> "
-> "h until\n"
<- "until is not a debugger command.\n"
" DB<44> "
-> "h r\n"
<- "r Return from current subroutine.\n"
" DB<45> "
-> "h c\n"
<- "c [line|sub] Continue; optionally inserts a one-time-only breakpoint\n"
"\t\tat the specified position.\n"
"command Execute as a perl statement in current package.\n"
" DB<46> "
-> "h signal\n"
<- "signal is not a debugger command.\n"
" DB<47> "
-> "h kill\n"
<- "kill is not a debugger command.\n"
" DB<48> "
-> "h up\n"
<- "up is not a debugger command.\n"
" DB<49> "
-> "h down\n"
<- "down is not a debugger command.\n"
" DB<50> "
# Starting execution window...
+ /bin/sh -c 'tmp=${TMPDIR-/tmp}/ddd$$; export tmp; trap "rm -f $tmp" 0; trap
'\''exit 1'\'' 1 2 15; xterm -geometry 90x24+0+570 -bg '\''grey96'\'' -fg
'\''black'\'' -cr '\''DarkGreen'\'' -fn
'\''-*-lucidatypewriter-medium-r-*-*-*-120-*-*-*-*-iso8859-*'\'' -title
'\''DDD: Execution Window'\'' -e /bin/sh -c '\''echo `tty` $$ $TERM $WINDOWID
>$tmp; trap "" 2; while true; do sleep 3600; done'\'' >/dev/null </dev/null
2>&1 & while test ! -s $tmp; do sleep 1; done; cat $tmp'
# Starting execution window...done.
# Initializing execution window...
# Initializing execution window...done.
-> "$ENV{\'TERM\'} = \'xterm\'\n"
<- "\n"
" DB<51> "
-> "open(STDIN, \"</dev/pts/9\"); open(STDOUT, \">/dev/pts/9\"); open(STDERR,
\">/dev/pts/9\"); \n"
<- "\n"
" DB<52> "
# Retrieving Perl Settings...
# Retrieving Perl Settings...
-> "O\n"
<- " hashDepth = \'\'\n"
" arrayDepth = \'\'\n"
" DumpDBFiles = \'\'\n"
" DumpPackages = \'\'\n"
" DumpReused = \'0\'\n"
" compactDump = \'\'\n"
" veryCompact = \'\'\n"
" quote = \'auto\'\n"
" HighBit = \'\'\n"
" undefPrint = \'1\'\n"
" globPrint = \'\'\n"
" PrintRet = \'1\'\n"
" UsageOnly = \'\'\n"
" frame = \'0\'\n"
" AutoTrace = \'0\'\n"
" TTY = \'/dev/tty\'\n"
" noTTY = \'\'\n"
" ReadLine = \'1\'\n"
" NonStop = \'0\'\n"
" LineInfo = \'/dev/tty\'\n"
" maxTraceLen = \'400\'\n"
" recallCommand = \'!\'\n"
" ShellBang = \'!\'\n"
" pager = \'|less\'\n"
" tkRunning = \'\'\n"
" ornaments = \'us,ue,md,me\'\n"
" signalLevel = \'1\'\n"
" warnLevel = \'1\'\n"
" dieLevel = \'1\'\n"
" inhibit_exit = \'1\'\n"
" ImmediateStop = \'\'\n"
" bareStringify = \'1\'\n"
" RemotePort = \'\'\n"
" DB<52> "
# Retrieving Perl Settings...done.
# Retrieving Perl Settings...done.
-> "exec \"perl -d /sopt/icds/3.0/tools/epic/bin/sdfGen\"\n"
<- "\n"
"Loading DB routines from perl5db.pl version 1.07\n"
"Editor support available.\n"
"\n"
"Enter h or `h h\' for help, or `man perldebug\' for more help.\n"
"\n"
<- "main::(/sopt/icds/3.0/tools/epic/bin/sdfGen:60):\n"
<- "60:\t$^W=1 if ( exists $ENV{\'ICDS_DBG_Epic_sdfGen\'} && \n"
<- "61:\t $ENV{\'ICDS_DBG_Epic_sdfGen\'} eq \'debug\' );\n"
<- "\033[4m DB<1> \033[m\033[1m"
-> "L\n"
<- "\033[m"
<- "\033[4m DB<1> \033[m\033[1m"
-> "O ornaments=\"\"\n"
<- "\033[m"
<- " ornaments = \',,,\'\n"
<- " DB<2> "
-> "$DB::emacs = 1\n"
<- "\n"
<- " DB<3> "
-> "O compactDump=\n"
<- "Option better cleared using compactDump=\"\"\n"
<- " compactDump = \'\'\n"
<- " DB<4> "
-> "O veryCompact=\n"
<- "Option better cleared using veryCompact=\"\"\n"
<- " veryCompact = \'\'\n"
<- " DB<5> "
-> "O hashDepth=\n"
<- "Option better cleared using hashDepth=\"\"\n"
<- " hashDepth = \'\'\n"
<- " DB<6> "
-> "O arrayDepth=\n"
<- "Option better cleared using arrayDepth=\"\"\n"
<- " arrayDepth = \'\'\n"
<- " DB<7> "
-> "O DumpDBFiles=\n"
<- "Option better cleared using DumpDBFiles=\"\"\n"
<- " DumpDBFiles = \'\'\n"
<- " DB<8> "
-> "O DumpPackages=\n"
<- "Option better cleared using DumpPackages=\"\"\n"
<- " DumpPackages = \'\'\n"
<- " DB<9> "
-> "O DumpReused=0\n"
<- " DumpReused = \'0\'\n"
<- " DB<10> "
-> "O compactDump=\n"
<- "Option better cleared using compactDump=\"\"\n"
<- " compactDump = \'\'\n"
<- " DB<11> "
-> "O veryCompact=\n"
<- "Option better cleared using veryCompact=\"\"\n"
<- " veryCompact = \'\'\n"
<- " DB<12> "
-> "O quote=auto\n"
<- " quote = \'auto\'\n"
<- " DB<13> "
-> "O HighBit=\n"
<- "Option better cleared using HighBit=\"\"\n"
<- " HighBit = \'\'\n"
<- " DB<14> "
-> "O undefPrint=1\n"
<- " undefPrint = \'1\'\n"
<- " DB<15> "
-> "O globPrint=\n"
<- "Option better cleared using globPrint=\"\"\n"
<- " globPrint = \'\'\n"
<- " DB<16> "
-> "O PrintRet=1\n"
<- " PrintRet = \'1\'\n"
<- " DB<17> "
-> "O UsageOnly=\n"
<- "Option better cleared using UsageOnly=\"\"\n"
<- " UsageOnly = \'\'\n"
<- " DB<18> "
-> "O frame=0\n"
<- " frame = \'0\'\n"
<- " DB<19> "
-> "O AutoTrace=0\n"
<- " AutoTrace = \'0\'\n"
<- " DB<20> "
-> "O LineInfo=/dev/tty\n"
<- " LineInfo = \'/dev/tty\'\n"
<- " DB<21> "
-> "O maxTraceLen=400\n"
<- " maxTraceLen = \'400\'\n"
<- " DB<22> "
-> "O recallCommand=!\n"
<- " recallCommand = \'!\'\n"
<- " DB<23> "
-> "O ShellBang=!\n"
<- " ShellBang = \'!\'\n"
<- " DB<24> "
-> "O pager=|less\n"
<- " pager = \'|less\'\n"
<- " DB<25> "
-> "O tkRunning=\n"
<- "Option better cleared using tkRunning=\"\"\n"
<- " tkRunning = \'\'\n"
<- " DB<26> "
-> "O signalLevel=1\n"
<- " signalLevel = \'1\'\n"
<- " DB<27> "
-> "O warnLevel=1\n"
<- " warnLevel = \'1\'\n"
<- " DB<28> "
-> "O dieLevel=1\n"
<- "Stack dump during die enabled outside of evals.\n"
<- " dieLevel = \'1\'\n"
<- " DB<29> "
-> "O inhibit_exit=1\n"
<- " inhibit_exit = \'1\'\n"
<- " DB<30> "
-> "O ImmediateStop=\n"
<- "Option better cleared using ImmediateStop=\"\"\n"
<- " ImmediateStop = \'\'\n"
<- " DB<31> "
-> "O bareStringify=1\n"
<- " bareStringify = \'1\'\n"
<- " DB<32> "
-> "O RemotePort=\n"
<- "Option better cleared using RemotePort=\"\"\n"
<- "Too late to set RemotePort, enabled on next \'R\'!\n"
<- " RemotePort = \'\'\n"
<- " DB<33> "
-> "O hashDepth=\n"
<- "Option better cleared using hashDepth=\"\"\n"
<- " hashDepth = \'\'\n"
<- " DB<34> "
-> "O arrayDepth=\n"
<- "Option better cleared using arrayDepth=\"\"\n"
<- " arrayDepth = \'\'\n"
<- " DB<35> "
-> "O DumpDBFiles=\n"
<- "Option better cleared using DumpDBFiles=\"\"\n"
<- " DumpDBFiles = \'\'\n"
<- " DB<36> "
-> "O DumpPackages=\n"
<- "Option better cleared using DumpPackages=\"\"\n"
<- " DumpPackages = \'\'\n"
<- " DB<37> "
-> "O DumpReused=0\n"
<- " DumpReused = \'0\'\n"
<- " DB<38> "
-> "O compactDump=\n"
<- "Option better cleared using compactDump=\"\"\n"
<- " compactDump = \'\'\n"
<- " DB<39> "
-> "O veryCompact=\n"
<- "Option better cleared using veryCompact=\"\"\n"
<- " veryCompact = \'\'\n"
<- " DB<40> "
-> "O quote=auto\n"
<- " quote = \'auto\'\n"
<- " DB<41> "
-> "O HighBit=\n"
<- "Option better cleared using HighBit=\"\"\n"
<- " HighBit = \'\'\n"
<- " DB<42> "
-> "O undefPrint=1\n"
<- " undefPrint = \'1\'\n"
<- " DB<43> "
-> "O globPrint=\n"
<- "Option better cleared using globPrint=\"\"\n"
<- " globPrint = \'\'\n"
<- " DB<44> "
-> "O PrintRet=1\n"
<- " PrintRet = \'1\'\n"
<- " DB<45> "
-> "O UsageOnly=\n"
<- "Option better cleared using UsageOnly=\"\"\n"
<- " UsageOnly = \'\'\n"
<- " DB<46> "
-> "O frame=0\n"
<- " frame = \'0\'\n"
<- " DB<47> "
-> "O AutoTrace=0\n"
<- " AutoTrace = \'0\'\n"
<- " DB<48> "
-> "O LineInfo=/dev/tty\n"
<- " LineInfo = \'/dev/tty\'\n"
<- " DB<49> "
-> "O maxTraceLen=400\n"
<- " maxTraceLen = \'400\'\n"
<- " DB<50> "
-> "O recallCommand=!\n"
<- " recallCommand = \'!\'\n"
<- " DB<51> "
-> "O ShellBang=!\n"
<- " ShellBang = \'!\'\n"
<- " DB<52> "
-> "O pager=|less\n"
<- " pager = \'|less\'\n"
<- " DB<53> "
-> "O tkRunning=\n"
<- "Option better cleared using tkRunning=\"\"\n"
<- " tkRunning = \'\'\n"
<- " DB<54> "
-> "O ornaments=us,ue,md,me\n"
<- " ornaments = \'us,ue,md,me\'\n"
<- "\033[4m DB<55> \033[m\033[1m"
-> "O signalLevel=1\n"
<- "\033[m"
<- " signalLevel = \'1\'\n"
<- "\033[4m DB<56> \033[m\033[1m"
-> "O warnLevel=1\n"
<- "\033[m"
<- " warnLevel = \'1\'\n"
<- "\033[4m DB<57> \033[m\033[1m"
-> "O dieLevel=1\n"
<- "\033[m"
<- "Stack dump during die enabled outside of evals.\n"
<- " dieLevel = \'1\'\n"
<- "\033[4m DB<58> \033[m\033[1m"
-> "O inhibit_exit=1\n"
<- "\033[m"
<- " inhibit_exit = \'1\'\n"
<- "\033[4m DB<59> \033[m\033[1m"
-> "O ImmediateStop=\n"
<- "\033[m"
<- "Option better cleared using ImmediateStop=\"\"\n"
<- " ImmediateStop = \'\'\n"
<- "\033[4m DB<60> \033[m\033[1m"
-> "O bareStringify=1\n"
<- "\033[m"
<- " bareStringify = \'1\'\n"
<- "\033[4m DB<61> \033[m\033[1m"
-> "O RemotePort=\n"
<- "\033[m"
<- "Option better cleared using RemotePort=\"\"\n"
<- "Too late to set RemotePort, enabled on next \'R\'!\n"
<- " RemotePort = \'\'\n"
<- "\033[4m DB<62> \033[m\033[1m"
-> "# reset\n"
<- "\033[m"
<- "\n"
<- "\033[4m DB<63> \033[m\033[1m"
-> "L\n"
<- "\033[m"
<- "\033[4m DB<63> \033[m\033[1m"
# Initializing execution window...
# Initializing execution window...done.
-> "$ENV{\'TERM\'} = \'xterm\'\n"
<- "\033[m"
<- "\n"
<- "\033[4m DB<64> \033[m\033[1m"
-> "open(STDIN, \"</dev/pts/9\"); open(STDOUT, \">/dev/pts/9\"); open(STDERR,
\">/dev/pts/9\"); \n"
<- "\033[m"
<- "\n"
<- "\033[4m DB<65> \033[m\033[1m"
-> "x $debug\n"
<- "\033[m"
<- "0 "
<- "undef\n"
<- "\033[4m DB<66> \033[m\033[1m"
-> "T\n"
<- "\033[m"
<- "\033[4m DB<66> \033[m\033[1m"
-> "x main\n"
<- "\033[m"
<- "0 "
<- "\'main\'\n"
<- "\033[4m DB<67> \033[m\033[1m"
# Creating display...
# Creating display...done.
-> "T\n"
<- "\033[m\033[4m DB<67> \033[m\033[1m"
# Creating status display...
# Creating status display...done.
# Displays -2 and 1 (2 displays)
# Displays -2 and 1 (2 displays)
# Displays -2 and 1 (2 displays)
# Displays -2 and 1 (2 displays)
# Displays -2 and 1 (2 displays)
-> "p $\n"
<- "\033[m"
<- "\034"
<- "\n"
<- "\033[4m DB<68> \033[m\033[1m"
-> "p $d\n"
<- "\033[m"
<- "\n"
<- "\033[4m DB<69> \033[m\033[1m"
-> "p $de\n"
<- "\033[m"
<- "\n"
"\033[4m DB<70> \033[m\033[1m"
-> "p $deb\n"
<- "\033[m\n"
"\033[4m DB<71> \033[m\033[1m"
-> "p $debu\n"
<- "\033[m\n"
"\033[4m DB<72> \033[m\033[1m"
-> "p $debug\n"
<- "\033[m\n"
"\033[4m DB<73> \033[m\033[1m"
-> "T\n"
<- "\033[m\033[4m DB<73> \033[m\033[1m"
-> "x $debug\n"
<- "\033[m0 undef\n"
"\033[4m DB<74> \033[m\033[1m"
# Creating display...
# Creating display...done.
# Updating clusters...
# Updating clusters...done.
-> "x @ARGV\n"
<- "\033[m empty array\n"
"\033[4m DB<75> \033[m\033[1m"
-> "x $opt\n"
<- "\033[m0 undef\n"
"\033[4m DB<76> \033[m\033[1m"
-> "x @ARG\n"
<- "\033[m empty array\n"
"\033[4m DB<77> \033[m\033[1m"
-> "q\n"
<- "\033[m"
# Running Perl (pid 1613, tty /dev/pts/8)...Exit 0.
# Closing execution window...
# Closing execution window...done.
# Thanks for using DDD 3.3.1!
ecmorgan.vcf
Description: Card for Edward_C_Morgan
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Debugging perl with ddd 3.3.1,
Edward_C_Morgan <=