This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
I am trying to debug a program which is composed of mixed C and Fortran code. If I set a breakpoint somewhere in a fortran routine, netbeans hangs (actually, gdb hangs). The variables and stack-trace windows are blank. IO am able to set breakpoints in C code. All codes have been compiled with "-g" switch. I have tried everyone of the gdb 7.x versions, from 7.0.1 to 7.4, to no avail. I tried gdb 6.8; it does not hang at the breakpoint, but starts issuing "encountered unexpected dwarf opcode" errors. Scientific Linux distro, 6.2 gcc/gfortran version 4.4.6 20110731 (Red Hat 4.4.6-3) gdb (GDB) Red Hat Enterprise Linux (7.2-50.el6) uname -a: Linux cairo 2.6.32-220.13.1.el6.x86_64 #1 SMP Tue Apr 17 15:16:22 CDT 2012 x86_64 x86_64 x86_64 GNU/Linux Debugging console output follows. =thread-group-added,id="i1" ~"GNU gdb (GDB) Red Hat Enterprise Linux (7.2-50.el6)\n" ~"Copyright (C) 2010 Free Software Foundation, Inc.\n" ~"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law. Type \"show copying\"\nand \"show warranty\" for details.\n" ~"This GDB was configured as \"x86_64-redhat-linux-gnu\".\nFor bug reporting instructions, please see:\n" ~"<http://www.gnu.org/software/gdb/bugs/>.\n" &"/home/brownrig/.gdbinit: No such file or directory.\n" (gdb) 2-list-features 3-gdb-set print repeat 0 4-gdb-set backtrace limit 1024 5-gdb-set print elements 0 6-file-exec-and-symbols "/scratch/dev/cairo_32bitColor/ni/src/ncl/ncl" 2^done,features=["frozen-varobjs","pending-breakpoints","thread-info","python"] (gdb) 3^done (gdb) 4^done (gdb) 5^done (gdb) 6^done (gdb) 7-file-list-exec-source-file 8cd /scratch/dev/testSuite/Jira1509 9-exec-arguments cape_300heights_pv.ncl 10set environment LD_LIBRARY_PATH=/scratch/local/lib:/contrib/lib:/usr/local/lib:/usr/lib64 11set environment NCARG_COLORMAPS=/scratch/dev/testSuite/Jira1509:/scratch/nclbuildCairo32/lib/ncarg/colormaps 12set environment NCARG_ROOT=/scratch/nclbuildCairo32 7^done,line="103",file="Ncl.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/Ncl.c",macro-info="0" (gdb) 13-break-insert -f "/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/plotchar/plchhq.f:1098" &"cd /scratch/dev/testSuite/Jira1509\n" ~"Working directory /scratch/dev/testSuite/Jira1509.\n" 8^done (gdb) 9^done (gdb) &"set environment LD_LIBRARY_PATH=/scratch/local/lib:/contrib/lib:/usr/local/lib:/usr/lib64\n" 10^done (gdb) &"set environment NCARG_COLORMAPS=/scratch/dev/testSuite/Jira1509:/scratch/nclbuildCairo32/lib/ncarg/colormaps\n" 11^done (gdb) &"set environment NCARG_ROOT=/scratch/nclbuildCairo32\n" 12^done (gdb) 14-break-insert -t _start 13^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x0000000000bd16ba",func="plchhq",file="plchhq.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/plotchar/plchhq.f",line="1098",times="0",original-location="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/plotchar/plchhq.f:1098"} (gdb) 14^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0000000000544ca0",at="<_start>",times="0",original-location="_start"} (gdb) 15-exec-run =thread-group-started,id="i1",pid="23825" =thread-created,id="1",group-id="i1" 15^running *running,thread-id="all" (gdb) =library-loaded,id="/lib64/ld-linux-x86-64.so.2",target-name="/lib64/ld-linux-x86-64.so.2",host-name="/lib64/ld-linux-x86-64.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libcurl.so.4",target-name="/usr/lib64/libcurl.so.4",host-name="/usr/lib64/libcurl.so.4",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libjpeg.so.62",target-name="/usr/lib64/libjpeg.so.62",host-name="/usr/lib64/libjpeg.so.62",symbols-loaded="0",thread-group="i1" =library-loaded,id="/contrib/lib/libz.so.1",target-name="/contrib/lib/libz.so.1",host-name="/contrib/lib/libz.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libpng12.so.0",target-name="/usr/lib64/libpng12.so.0",host-name="/usr/lib64/libpng12.so.0",symbols-loaded="0",thread-group="i1" =library-loaded,id="/contrib/lib/libcairo.so.2",target-name="/contrib/lib/libcairo.so.2",host-name="/contrib/lib/libcairo.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libXrender.so.1",target-name="/usr/lib64/libXrender.so.1",host-name="/usr/lib64/libXrender.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libfontconfig.so.1",target-name="/usr/lib64/libfontconfig.so.1",host-name="/usr/lib64/libfontconfig.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/contrib/lib/libpixman-1.so.0",target-name="/contrib/lib/libpixman-1.so.0",host-name="/contrib/lib/libpixman-1.so.0",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libfreetype.so.6",target-name="/usr/lib64/libfreetype.so.6",host-name="/usr/lib64/libfreetype.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libbz2.so.1",target-name="/lib64/libbz2.so.1",host-name="/lib64/libbz2.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libpthread.so.0",target-name="/lib64/libpthread.so.0",host-name="/lib64/libpthread.so.0",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libX11.so.6",target-name="/usr/lib64/libX11.so.6",host-name="/usr/lib64/libX11.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libXext.so.6",target-name="/usr/lib64/libXext.so.6",host-name="/usr/lib64/libXext.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libgfortran.so.3",target-name="/usr/lib64/libgfortran.so.3",host-name="/usr/lib64/libgfortran.so.3",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libm.so.6",target-name="/lib64/libm.so.6",host-name="/lib64/libm.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libdl.so.2",target-name="/lib64/libdl.so.2",host-name="/lib64/libdl.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libstdc++.so.6",target-name="/usr/lib64/libstdc++.so.6",host-name="/usr/lib64/libstdc++.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libgcc_s.so.1",target-name="/lib64/libgcc_s.so.1",host-name="/lib64/libgcc_s.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libc.so.6",target-name="/lib64/libc.so.6",host-name="/lib64/libc.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libidn.so.11",target-name="/lib64/libidn.so.11",host-name="/lib64/libidn.so.11",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libldap-2.4.so.2",target-name="/lib64/libldap-2.4.so.2",host-name="/lib64/libldap-2.4.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/librt.so.1",target-name="/lib64/librt.so.1",host-name="/lib64/librt.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libgssapi_krb5.so.2",target-name="/lib64/libgssapi_krb5.so.2",host-name="/lib64/libgssapi_krb5.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libkrb5.so.3",target-name="/lib64/libkrb5.so.3",host-name="/lib64/libkrb5.so.3",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libk5crypto.so.3",target-name="/lib64/libk5crypto.so.3",host-name="/lib64/libk5crypto.so.3",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libcom_err.so.2",target-name="/lib64/libcom_err.so.2",host-name="/lib64/libcom_err.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libssl3.so",target-name="/usr/lib64/libssl3.so",host-name="/usr/lib64/libssl3.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libsmime3.so",target-name="/usr/lib64/libsmime3.so",host-name="/usr/lib64/libsmime3.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libnss3.so",target-name="/usr/lib64/libnss3.so",host-name="/usr/lib64/libnss3.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libnssutil3.so",target-name="/usr/lib64/libnssutil3.so",host-name="/usr/lib64/libnssutil3.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libplds4.so",target-name="/lib64/libplds4.so",host-name="/lib64/libplds4.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libplc4.so",target-name="/lib64/libplc4.so",host-name="/lib64/libplc4.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libnspr4.so",target-name="/lib64/libnspr4.so",host-name="/lib64/libnspr4.so",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libssh2.so.1",target-name="/usr/lib64/libssh2.so.1",host-name="/usr/lib64/libssh2.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libexpat.so.1",target-name="/lib64/libexpat.so.1",host-name="/lib64/libexpat.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libxcb.so.1",target-name="/usr/lib64/libxcb.so.1",host-name="/usr/lib64/libxcb.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/liblber-2.4.so.2",target-name="/lib64/liblber-2.4.so.2",host-name="/lib64/liblber-2.4.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libresolv.so.2",target-name="/lib64/libresolv.so.2",host-name="/lib64/libresolv.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libsasl2.so.2",target-name="/usr/lib64/libsasl2.so.2",host-name="/usr/lib64/libsasl2.so.2",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libkrb5support.so.0",target-name="/lib64/libkrb5support.so.0",host-name="/lib64/libkrb5support.so.0",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libkeyutils.so.1",target-name="/lib64/libkeyutils.so.1",host-name="/lib64/libkeyutils.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libssl.so.10",target-name="/usr/lib64/libssl.so.10",host-name="/usr/lib64/libssl.so.10",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libcrypto.so.10",target-name="/usr/lib64/libcrypto.so.10",host-name="/usr/lib64/libcrypto.so.10",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libXau.so.6",target-name="/usr/lib64/libXau.so.6",host-name="/usr/lib64/libXau.so.6",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libcrypt.so.1",target-name="/lib64/libcrypt.so.1",host-name="/lib64/libcrypt.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/lib64/libselinux.so.1",target-name="/lib64/libselinux.so.1",host-name="/lib64/libselinux.so.1",symbols-loaded="0",thread-group="i1" =library-loaded,id="/usr/lib64/libfreebl3.so",target-name="/usr/lib64/libfreebl3.so",host-name="/usr/lib64/libfreebl3.so",symbols-loaded="0",thread-group="i1" ~"[Thread debugging using libthread_db enabled]\n" *stopped,reason="breakpoint-hit",disp="del",bkptno="2",frame={addr="0x0000000000544ca0",func="_start",args=[]},thread-id="1",stopped-threads="all",core="2" (gdb) 16-exec-continue 16^running *running,thread-id="all" (gdb) No answer for: 15-exec-run =library-loaded,id="/lib64/libnss_files.so.2",target-name="/lib64/libnss_files.so.2",host-name="/lib64/libnss_files.so.2",symbols-loaded="0",thread-group="i1" *stopped,reason="breakpoint-hit",disp="keep",bkptno="1",frame={addr="0x0000000000bd16ba",func="plchhq",args=[{name="xpos",value="-39.9065208"},{name="ypos",value="58.4939766"},{name="chrs",value="'860'"},{name="size",value="0.0120000001"},{name="angd",value="8.65673828"},{name="cntr",value="0"},{name="_chrs",value="3"}],file="plchhq.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/plotchar/plchhq.f",line="1098"},thread-id="1",stopped-threads="all",core="6" (gdb) 17-stack-list-frames 17^done,stack=[frame={level="0",addr="0x0000000000bd16ba",func="plchhq",file="plchhq.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/plotchar/plchhq.f",line="1098"},frame={level="1",addr="0x0000000000b9ca2c",func="dpdraw",file="dpdraw.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/dashpack/dpdraw.f",line="751"},frame={level="2",addr="0x0000000000b9a051",func="dpcurv",file="dpcurv.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/dashpack/dpcurv.f",line="42"},frame={level="3",addr="0x0000000000c2e082",func="cpdrsg",file="cpdrsg.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/conpack/cpdrsg.f",line="71"},frame={level="4",addr="0x0000000000c19404",func="cpcldr",file="cpcldr.f",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/conpack/cpcldr.f",line="484"},frame={level="5",addr="0x0000000000bfd92f",func="c_cpcldr",file="c_cpcldr.c",fullname="/scratch/dev/cairo_32bitColor/ncarg2d/src/libncarg/conpackC/c_cpcldr.c",line="32"},frame={level="6",addr="0x0000000000aa187c",func="_NhlCpcldr",file="Workspace.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Workspace.c",line="2677"},frame={level="7",addr="0x0000000000b13d2b",func="CnStdRender",file="CnStdRenderer.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/CnStdRenderer.c",line="1771"},frame={level="8",addr="0x0000000000b0e615",func="_NhlContourRender",file="CnRenderer.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/CnRenderer.c",line="140"},frame={level="9",addr="0x0000000000a55f82",func="cnDraw",file="ContourPlot.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/ContourPlot.c",line="3772"},frame={level="10",addr="0x0000000000a55a7f",func="ContourPlotPostDraw",file="ContourPlot.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/ContourPlot.c",line="3619"},frame={level="11",addr="0x00000000009e32ce",func="CallPostDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="165"},frame={level="12",addr="0x00000000009e3945",func="_NhlPostDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="456"},frame={level="13",addr="0x0000000000a748a0",func="PlotManagerPostDraw",file="PlotManager.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/PlotManager.c",line="1984"},frame={level="14",addr="0x00000000009e32ce",func="CallPostDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="165"},frame={level="15",addr="0x00000000009e347c",func="_NhlPlotManagerDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="237"},frame={level="16",addr="0x00000000009e362b",func="NhlDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="303"},frame={level="17",addr="0x0000000000a25747",func="DrawChildren",file="Workstation.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Workstation.c",line="3800"},frame={level="18",addr="0x0000000000a2578f",func="WorkstationDraw",file="Workstation.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Workstation.c",line="3834"},frame={level="19",addr="0x00000000009e324b",func="CallDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="118"},frame={level="20",addr="0x00000000009e3219",func="CallDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="112"},frame={level="21",addr="0x00000000009e3418",func="_NhlPlotManagerDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="229"},frame={level="22",addr="0x00000000009e362b",func="NhlDraw",file="Draw.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/lib/hlu/Draw.c",line="303"},frame={level="23",addr="0x000000000070dbb0",func="_NclIDraw",file="BuiltInFuncs.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/BuiltInFuncs.c",line="2243"},frame={level="24",addr="0x00000000006cbf43",func="CallINTRINSIC_PROC_CALL",file="Execute.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/Execute.c",line="2594"},frame={level="25",addr="0x00000000006db33d",func="_NclExecute",file="Execute.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/Execute.c",line="7353"},frame={level="26",addr="0x00000000006e6478",func="_NclProcCallOp",file="OpsFuncs.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/OpsFuncs.c",line="1483"},frame={level="27",addr="0x00000000006cbd17",func="CallPROC_CALL_OP",file="Execute.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/Execute.c",line="2516"},frame={level="28",addr="0x00000000006db329",func="_NclExecute",file="Execute.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/Execute.c",line="7345"},frame={level="29",addr="0x000000000054cb59",func="yyparse",file="ncl.y",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/ncl.y",line="192"},frame={level="30",addr="0x0000000000545d5f",func="main",file="Ncl.c",fullname="/scratch/dev/cairo_32bitColor/ni/src/ncl/Ncl.c",line="514"}] (gdb) No answer for: 16-exec-continue 18-stack-list-arguments 1 19-gdb-exit 20-gdb-exit
Have tried to create a small test case to reproduce the behavior, to no avail; with simple programs, the debugger works properly with fortran code. (As an aside, I was able to reproduce a previously reported bug, whereby "step" behaves as "continue" when using gdb 7.2. The work-around for that bug was to use older version of gdb. I'd note that newer versions (e.g, 7.4.1) work correctly as well).
I've become convinced this is an interaction somewhere between the gdb/mi interpreter and netbeans interaction with it, coupled with some peculiarity with gfortran code. I've seen a very similar behavior with eclipse. In all cases, it seems as though the gdb/mi dialog gets out of sync, with the result that something (gdb or netbeans?) is blocked waiting on a response from the other. That response never comes. The bit of interaction in particular that seems to trigger this state, in both netbeans and eclipse, is usually a request to display the stack (stack-list), or a request to display the variables (var-update, etc). I can see from the debugging console that gdb/mi commands from the UI continue to be issued, when for example, I do a continue, step, switching between stack and variables tabs, etc., but nothing happens since the dialog is hung. I've not seen this when a break point is set in the C code; things behave normally. As an aside, I have tried every version of gdb 7.x and updated my gcc/gfortran to 4.7.1, with the same result.
I had previously been able to debug C/Fortran code under Netbeans on an older machine. On my new machine, I created an environment of compiler/debugger/netbeans that mirrors the versions of the older machine: gcc/gfortran 4.4.3 gdb 7.1 netbeans 6.9.1 This now works -- I can place breakpoints in the fortran code, examine variables and stack, and gdb does not hang. This is provided I use an "external terminal" for the program output; if I use "internal terminal", eventually it will hang at some random point (as opposed to hanging predictably with newer versions of compiler/debugger/NB). Note that the external/internal terminal choices do make any difference in newer compiler/debugger/NB, as the gdb/mi -- netbeans dialog stalls in either case. At any rate, I have a working environment now, even if it is a bit vintage.
This is also a problem with Netbeans 7.2 under Windows 7. Gdb runs correctly as long as one does NOT attempt to look at variables or watches. That is, stepping through code, setting and running to breakpoints both work fine. It appears that switching the variables tab breaks something.
let's summarize: - Netbeans 7.2 on Windows 7 (with cygwin or mingw?) hangs when looking at variables or watches; - please clarify about other platforms
also on Scientific Linux 6.2 and Fedora 16/17
Is the issue reproducible for NB8.0 with gdb 7.5?
This issue still exists: NetBeans 8.2 CentOS Linux release 7.4.1708 (Core) GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-100.el7 Setting breakpoint in fortran code *frequently* causes the NB UI to become completely irresponsive, and system monitor shows gdb running with 100% processor utilization. Commands entered in the debugger console show up in the debug logfile, but don't appear to be changing debugger state.