Not much time to investigate, but this is what I get with the g95 compilation running through the 1dvar (compiled with debug). This does not happen with the ifort. Seems the udunits is getting the whole load of variable names in line 7 of gdb output. But I don't know if this is causing the trouble.
INFO:
Stop on dxmin during line search.
Number of iterations (simulations): 39 (162).
Program received signal SIGSEGV, Segmentation fault.
0xb7e22ffa in free () from /lib/tls/libc.so.6
(gdb) where
#0 0xb7e22ffa in free () from /lib/tls/libc.so.6
#1 0xb7e246ef in malloc () from /lib/tls/libc.so.6
#2 0x082bb60c in utAdd ()
#3 0x082bbb4b in utInit ()
#4 0x082bbea7 in utopen_ ()
#5 0x080cdab3 in udunits_MP_utcvt90_ (from_unit=0xbf93de14 "percent", ' ' <repeats 57 times>,
to_unit=0xbf9352d0 "percent", ' ' <repeats 121 times>, slope=0xbf934f68, intercept=0xbf934f60, from_unit.len=64, to_unit.len=128)
at ../udunits/udunits.f90:646
#6 0x080923d1 in ut_converts_eightbytereal__ (from=0xbf93caf0, from_unit=0xbf93de14 "percent", ' ' <repeats 57 times>, values=0xbf935380,
to_unit=0xbf9352d0 "percent", ' ' <repeats 121 times>, from_unit.len=64, to_unit.len=128) at ../udunits/ut_convert.f90:258
#7 0x08198eec in ncdf_putvar_eightbytereal__ (
name=0x83df08b "overall_qualtimelatlontime_offsetundulationrocr_cocazimuthNONEbg_sourcebg_yearbg_monthbg_daybg_hourbg_minutebg_fcperioddtimesnr_L1casnr_L1psnr_L2pphase_L1phase_L2r_gnsv_gnsr_leov_leophase_quallat_tplo"..., values=0xbf93caf0, ncfile=0x0, ncid=0x0, rec=0xbf93554c,
start=0x0, units=0xbf93de14 "percent", ' ' <repeats 57 times>, name.len=12, ncfile.len=0, units.len=64) at ../ncdf/ncdf_putvar.f90:1074
#8 0x080cbbea in ropp_io_write_ncdf_put_rodata__ (data=0xbf93c8e8, rec=0xbf9356c8) at ../ropp/ropp_io_write_ncdf_put.f90:131
#9 0x080c3570 in ropp_io_write_ncdf_rodatas__ (
file=0xbf935708 "projectsr/Radio_Occultation/temp/ropp_test_tmp/IT-1DVAR-01.1.nc", ' ' <repeats 137 times>..., rodata=0xbf93c8e8,
rec=0xbf935d28, ierr=0x0, append=0xbf935d20, file.len=1024) at ../ropp/ropp_io_write_ncdf.f90:138
#10 0x080bf1d9 in ropp_io_write_rodatass__ (rodata=0xbf93c8e8,
file=0xbf937da8 "projectsr/Radio_Occultation/temp/ropp_test_tmp/IT-1DVAR-01.1.nc", ' ' <repeats 137 times>..., path=0x0, type=0x0,
append=0xbf94577c, rec=0x0, ierr=0x0, file.len=2048, path.len=0, type.len=0) at ../ropp/ropp_io_write.f90:210
#11 0x0804ad9f in MAIN_ () at ../1dvar/ropp_1dvar_refrac_ec.f90:306
#12 0x083c7015 in main (argc=9, argv=0xbf945834)
(gdb) quit
The program is running. Exit anyway? (y or n) y
Linux g95 version of 16 Jan 2007 or later seems to run the 1dvar app. ok now. (Though the HPUX and Cygwin versions of g95 still fail in much the same way).