Skip to content

Instantly share code, notes, and snippets.

@woodbri
Created June 8, 2016 21:41
Show Gist options
  • Save woodbri/2b29a46cc5c931b21122d265779eab53 to your computer and use it in GitHub Desktop.
Save woodbri/2b29a46cc5c931b21122d265779eab53 to your computer and use it in GitHub Desktop.
Patches for HYCOM to build on Ubuntu 14.04
diff -aur hycom/ALL/archive/src/Make_all.src hycom-Ubuntu-10.04/ALL/archive/src/Make_all.src
--- hycom/ALL/archive/src/Make_all.src 2005-03-02 12:41:09.000000000 -0500
+++ hycom-Ubuntu-10.04/ALL/archive/src/Make_all.src 2016-06-07 14:42:48.778077614 -0400
@@ -15,4 +15,4 @@
#setenv ARCH t3e
#setenv ARCH x1
#
-setenv ARCH amd64
+setenv ARCH gfortran
diff -aur hycom/ALL/archive/src/Makefile hycom-Ubuntu-10.04/ALL/archive/src/Makefile
--- hycom/ALL/archive/src/Makefile 2012-11-01 16:43:31.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/archive/src/Makefile 2016-06-08 13:11:45.528125659 -0400
@@ -120,31 +120,31 @@
$(LD) $(LDFLAGS) -o field2data field2data.o $(MODB) $(DATAH_OBJ)
field2ncdf: $(MODB) field2data.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o field2ncdf field2data.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o field2ncdf field2data.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdf2d: $(MODB) archv2data2d.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdf2d archv2data2d.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdf2d archv2data2d.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archm2ncdf2d: $(MODB) archm2data2d.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o archm2ncdf2d archm2data2d.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archm2ncdf2d archm2data2d.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdf2t: $(MODB) archv2data2t.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdf2t archv2data2t.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdf2t archv2data2t.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdf3z: $(MODZ) archv2data3z.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdf3z archv2data3z.o $(MODZ) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdf3z archv2data3z.o $(MODZ) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archm2ncdf3z: $(MODZ) archm2data3z.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archm2ncdf3z archm2data3z.o $(MODZ) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archm2ncdf3z archm2data3z.o $(MODZ) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdfsf: $(MODB) archv2datasf.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdfsf archv2datasf.o $(MODB) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdfsf archv2datasf.o $(MODB) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdfsfl: $(MODB) archv2datasfl.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdfsfl archv2datasfl.o $(MODB) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdfsfl archv2datasfl.o $(MODB) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdfsfz: $(MODB) archv2datasfz.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdfsfz archv2datasfz.o $(MODB) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdfsfz archv2datasfz.o $(MODB) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncombc: $(MODB) archv2ncombc.o $(DATAH_OBJ)
$(LD) $(LDFLAGS) -o archv2ncombc archv2ncombc.o $(MODB) $(DATAH_OBJ)
diff -aur hycom/ALL/archive/src_2.2.35/Makefile hycom-Ubuntu-10.04/ALL/archive/src_2.2.35/Makefile
--- hycom/ALL/archive/src_2.2.35/Makefile 2012-11-01 16:43:31.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/archive/src_2.2.35/Makefile 2016-06-08 13:11:45.528125659 -0400
@@ -120,31 +120,31 @@
$(LD) $(LDFLAGS) -o field2data field2data.o $(MODB) $(DATAH_OBJ)
field2ncdf: $(MODB) field2data.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o field2ncdf field2data.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o field2ncdf field2data.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdf2d: $(MODB) archv2data2d.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdf2d archv2data2d.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdf2d archv2data2d.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archm2ncdf2d: $(MODB) archm2data2d.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o archm2ncdf2d archm2data2d.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archm2ncdf2d archm2data2d.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdf2t: $(MODB) archv2data2t.o $(NCDFH_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdf2t archv2data2t.o $(MODB) $(NCDFH_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdf2t archv2data2t.o $(MODB) $(NCDFH_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdf3z: $(MODZ) archv2data3z.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdf3z archv2data3z.o $(MODZ) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdf3z archv2data3z.o $(MODZ) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archm2ncdf3z: $(MODZ) archm2data3z.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archm2ncdf3z archm2data3z.o $(MODZ) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archm2ncdf3z archm2data3z.o $(MODZ) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdfsf: $(MODB) archv2datasf.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdfsf archv2datasf.o $(MODB) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdfsf archv2datasf.o $(MODB) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdfsfl: $(MODB) archv2datasfl.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdfsfl archv2datasfl.o $(MODB) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdfsfl archv2datasfl.o $(MODB) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncdfsfz: $(MODB) archv2datasfz.o $(NCDFZ_OBJ)
- $(LD) $(LDFLAGS) -o archv2ncdfsfz archv2datasfz.o $(MODB) $(NCDFZ_OBJ) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o archv2ncdfsfz archv2datasfz.o $(MODB) $(NCDFZ_OBJ) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
archv2ncombc: $(MODB) archv2ncombc.o $(DATAH_OBJ)
$(LD) $(LDFLAGS) -o archv2ncombc archv2ncombc.o $(MODB) $(DATAH_OBJ)
diff -aur hycom/ALL/bin/Make_all.com hycom-Ubuntu-10.04/ALL/bin/Make_all.com
--- hycom/ALL/bin/Make_all.com 2012-08-14 13:05:13.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/bin/Make_all.com 2016-06-07 15:12:52.074123245 -0400
@@ -11,7 +11,7 @@
endif
# setenv OS LinuxIFC
# setenv OS LinuxICE
-# setenv OS LinuxGF
+setenv OS LinuxGF
# setenv OS XT5
endif
#if ($OS == "SunOS") then
diff -aur hycom/ALL/bin/Make_ncdf.com hycom-Ubuntu-10.04/ALL/bin/Make_ncdf.com
--- hycom/ALL/bin/Make_ncdf.com 2012-11-02 13:02:08.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/bin/Make_ncdf.com 2016-06-08 14:01:56.596201851 -0400
@@ -27,6 +27,7 @@
endif
# setenv OS LinuxIFC
# setenv OS LinuxICE
+setenv OS LinuxGF
# setenv OS XT5
endif
#if ($OS == "SunOS") then
@@ -43,6 +44,14 @@
setenv CC "gcc"
setenv CFLAGS "-O -march=k8 -m64 -mcmodel=medium"
breaksw
+case 'LinuxGF':
+# compile for gfortran
+ setenv FC "gfortran"
+ setenv FFLAGS "-fPIC -fno-second-underscore -fconvert=big-endian -O"
+ setenv FLIBS ""
+ setenv CC "gcc"
+ setenv CFLAGS "-fPIC -fno-second-underscore -O"
+ breaksw
case 'LinuxICE':
# compile for SGI Altix ICE, Intel compiler
setenv FC "ifort"
@@ -117,9 +126,9 @@
#
foreach f ( hycom_binning_nc hycom_scrip_nc )
if ( ! -e ${f}_${OS} ) then
- $FC $FFLAGS ${f}.F hycom_endian_io.o parse.o libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
+ $FC $FFLAGS ${f}.F hycom_endian_io.o parse.o /usr/lib/libnetcdff.a libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
else if ( -f `find ${f}.F -prune -newer ${f}_${OS}` ) then
- $FC $FFLAGS ${f}.F hycom_endian_io.o parse.o libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
+ $FC $FFLAGS ${f}.F hycom_endian_io.o parse.o /usr/lib/libnetcdff.a libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
else
echo "${f}_${OS} is already up to date"
endif
@@ -131,9 +140,9 @@
#
foreach f ( hycom_profile2z_nc hycom_profile2s_nc hycom_seaice_nc )
if ( ! -e ${f}_${OS} ) then
- $FC $FFLAGS ${f}.F hycom_profile_lib.o hycom_endian_io.o parse.o libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
+ $FC $FFLAGS ${f}.F hycom_profile_lib.o hycom_endian_io.o parse.o /usr/lib/libnetcdff.a libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
else if ( -f `find ${f}.F -prune -newer ${f}_${OS}` ) then
- $FC $FFLAGS ${f}.F hycom_profile_lib.o hycom_endian_io.o parse.o libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
+ $FC $FFLAGS ${f}.F hycom_profile_lib.o hycom_endian_io.o parse.o /usr/lib/libnetcdff.a libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
else
echo "${f}_${OS} is already up to date"
endif
@@ -145,13 +154,14 @@
#
foreach f ( wind_stat_nc wind_stat_range_nc )
if ( ! -e ${f}_${OS} ) then
- $FC $FFLAGS ${f}.f libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
+ $FC $FFLAGS ${f}.f /usr/lib/libnetcdff.a libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
else if ( -f `find ${f}.f -prune -newer ${f}_${OS}` ) then
- $FC $FFLAGS ${f}.f libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
+ $FC $FFLAGS ${f}.f /usr/lib/libnetcdff.a libnetcdf.a ${EXTRANCDF} -o ${f}_${OS}
else
echo "${f}_${OS} is already up to date"
endif
touch ${f}
/bin/rm -f ${f}
chmod a+rx ${f}_${OS}
+ /bin/ln -s ${f}_${OS} ${f}
end
diff -aur hycom/ALL/force/src/Makefile hycom-Ubuntu-10.04/ALL/force/src/Makefile
--- hycom/ALL/force/src/Makefile 2012-11-01 16:44:33.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/force/src/Makefile 2016-06-08 13:31:32.328155690 -0400
@@ -135,22 +135,22 @@
$(LD) $(LDFLAGS) conv_w_mm5.o $(MODS) zh.o -o conv_w_mm5
force2nc: force2nc.o $(MODS) zh.o
- $(LD) $(LDFLAGS) -o force2nc force2nc.o $(MODS) zh.o libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o force2nc force2nc.o $(MODS) zh.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
nrl2nc: nrl2nc.o $(MODS) zh.o
- $(LD) $(LDFLAGS) -o nrl2nc nrl2nc.o $(MODS) zh.o libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o nrl2nc nrl2nc.o $(MODS) zh.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
ap_nc: $(MODS) ap_nc.o $(LIBS)
- $(LD) $(LDFLAGS) -o ap_nc ap_nc.o $(MODS) $(LIBS) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o ap_nc ap_nc.o $(MODS) $(LIBS) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
kp_nc: $(MODS) kp_nc.o $(LIBS)
- $(LD) $(LDFLAGS) -o kp_nc kp_nc.o $(MODS) $(LIBS) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o kp_nc kp_nc.o $(MODS) $(LIBS) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
tp_nc: $(MODS) tp_nc.o $(LIBS)
- $(LD) $(LDFLAGS) -o tp_nc tp_nc.o $(MODS) $(LIBS) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o tp_nc tp_nc.o $(MODS) $(LIBS) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
wi_nc: $(MODP) wi_nc.o $(LIBP)
- $(LD) $(LDFLAGS) -o wi_nc wi_nc.o $(MODP) $(LIBP) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o wi_nc wi_nc.o $(MODP) $(LIBP) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
mod_scrip.o: mod_scrip.f
diff -aur hycom/ALL/force/src_2.2.29/Makefile hycom-Ubuntu-10.04/ALL/force/src_2.2.29/Makefile
--- hycom/ALL/force/src_2.2.29/Makefile 2012-11-01 16:44:33.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/force/src_2.2.29/Makefile 2016-06-08 13:31:32.328155690 -0400
@@ -135,22 +135,22 @@
$(LD) $(LDFLAGS) conv_w_mm5.o $(MODS) zh.o -o conv_w_mm5
force2nc: force2nc.o $(MODS) zh.o
- $(LD) $(LDFLAGS) -o force2nc force2nc.o $(MODS) zh.o libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o force2nc force2nc.o $(MODS) zh.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
nrl2nc: nrl2nc.o $(MODS) zh.o
- $(LD) $(LDFLAGS) -o nrl2nc nrl2nc.o $(MODS) zh.o libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o nrl2nc nrl2nc.o $(MODS) zh.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
ap_nc: $(MODS) ap_nc.o $(LIBS)
- $(LD) $(LDFLAGS) -o ap_nc ap_nc.o $(MODS) $(LIBS) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o ap_nc ap_nc.o $(MODS) $(LIBS) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
kp_nc: $(MODS) kp_nc.o $(LIBS)
- $(LD) $(LDFLAGS) -o kp_nc kp_nc.o $(MODS) $(LIBS) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o kp_nc kp_nc.o $(MODS) $(LIBS) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
tp_nc: $(MODS) tp_nc.o $(LIBS)
- $(LD) $(LDFLAGS) -o tp_nc tp_nc.o $(MODS) $(LIBS) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o tp_nc tp_nc.o $(MODS) $(LIBS) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
wi_nc: $(MODP) wi_nc.o $(LIBP)
- $(LD) $(LDFLAGS) -o wi_nc wi_nc.o $(MODP) $(LIBP) libnetcdf.a $(EXTRANCDF)
+ $(LD) $(LDFLAGS) -o wi_nc wi_nc.o $(MODP) $(LIBP) /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
mod_scrip.o: mod_scrip.f
diff -aur hycom/ALL/Make_ncdf.src hycom-Ubuntu-10.04/ALL/Make_ncdf.src
--- hycom/ALL/Make_ncdf.src 2012-11-02 13:02:40.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/Make_ncdf.src 2016-06-08 13:15:30.124131342 -0400
@@ -12,9 +12,9 @@
#setenv NCDF /common/netcdf-3.6.2-amd64pg
#setenv NCDF /common/netcdf/deprecated/netcdf-3.6.2-amd64pg
#
-setenv NCDF /common/netcdf/pgi11.8/3.6.3
+setenv NCDF /usr
#
# --- Use EXTRANCDF for the extra libraries needed for NCDF v4
#
#setenv EXTRANCDF "/u/home/wallcraf/pkgs/hdf5-1.8.4-serial/lib/libhdf5_hl.a /u/home/wallcraf/pkgs/hdf5-1.8.4-serial/lib/libhdf5.a /u/home/wallcraf/pkgs/zlib-1.2.3/lib/libz.a"
-setenv EXTRANCDF ""
+setenv EXTRANCDF "/usr/lib/libnetcdff.a /usr/lib/x86_64-linux-gnu/libhdf5_hl.a /usr/lib/x86_64-linux-gnu/libhdf5.a /usr/lib/x86_64-linux-gnu/libz.a -lpthread -lcurl -ldl "
diff -aur hycom/ALL/plot/src/Makefile hycom-Ubuntu-10.04/ALL/plot/src/Makefile
--- hycom/ALL/plot/src/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/plot/src/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
diff -aur hycom/ALL/plot/src_2.1.00/Makefile hycom-Ubuntu-10.04/ALL/plot/src_2.1.00/Makefile
--- hycom/ALL/plot/src_2.1.00/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/plot/src_2.1.00/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
diff -aur hycom/ALL/relax/src/Makefile hycom-Ubuntu-10.04/ALL/relax/src/Makefile
--- hycom/ALL/relax/src/Makefile 2012-11-02 12:24:20.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/relax/src/Makefile 2016-06-08 13:35:36.940161879 -0400
@@ -37,7 +37,7 @@
MODS = mod_xc.o mod_za.o wtime.o
LIBS = blkdat.o interp.o zh.o
-LIBN = blkdat.o interp.o zh.o libnetcdf.a $(EXTRANCDF)
+LIBN = blkdat.o interp.o zh.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
# select one of the programs to make,
# e.g. make z_levitus ARCH=sun >& Make_z_levitus
diff -aur hycom/ALL/relax/src_2.2.35/Makefile hycom-Ubuntu-10.04/ALL/relax/src_2.2.35/Makefile
--- hycom/ALL/relax/src_2.2.35/Makefile 2012-11-02 12:24:20.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/relax/src_2.2.35/Makefile 2016-06-08 13:35:36.940161879 -0400
@@ -37,7 +37,7 @@
MODS = mod_xc.o mod_za.o wtime.o
LIBS = blkdat.o interp.o zh.o
-LIBN = blkdat.o interp.o zh.o libnetcdf.a $(EXTRANCDF)
+LIBN = blkdat.o interp.o zh.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
# select one of the programs to make,
# e.g. make z_levitus ARCH=sun >& Make_z_levitus
diff -aur hycom/ALL/topo/src/Makefile hycom-Ubuntu-10.04/ALL/topo/src/Makefile
--- hycom/ALL/topo/src/Makefile 2012-11-02 12:18:33.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/topo/src/Makefile 2016-06-08 15:12:31.172309004 -0400
@@ -34,7 +34,7 @@
/bin/rm *.o *.mod M*log *hgram *min *1d *2d *2h *ppmX *sea *oth *clip *ff *flat *fill *mask *set *shrink *sub *map *nam *sby *trop *tor *rge *fy *it *noshrink *son *ude *zcells *zthin *arctic _test *_ns *1deg *lat *ts *ed *pe *gh *ip *es*30sec *pi *sea-b *360 *island
MODS = mod_xc.o mod_za.o wtime.o
-MODN = mod_xc.o mod_za.o wtime.o libnetcdf.a $(EXTRANCDF)
+MODN = mod_xc.o mod_za.o wtime.o /usr/lib/libnetcdff.a /usr/lib/libnetcdf.a $(EXTRANCDF)
MODG = $(MODS) spherdist.o rotang.o
# update ARCH in Make_all.com and
diff -aur hycom/ALL/topo/src_2.2.72/Makefile hycom-Ubuntu-10.04/ALL/topo/src_2.2.72/Makefile
--- hycom/ALL/topo/src_2.2.72/Makefile 2012-11-02 12:18:33.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/topo/src_2.2.72/Makefile 2016-06-08 15:12:31.172309004 -0400
@@ -34,7 +34,7 @@
/bin/rm *.o *.mod M*log *hgram *min *1d *2d *2h *ppmX *sea *oth *clip *ff *flat *fill *mask *set *shrink *sub *map *nam *sby *trop *tor *rge *fy *it *noshrink *son *ude *zcells *zthin *arctic _test *_ns *1deg *lat *ts *ed *pe *gh *ip *es*30sec *pi *sea-b *360 *island
MODS = mod_xc.o mod_za.o wtime.o
-MODN = mod_xc.o mod_za.o wtime.o libnetcdf.a $(EXTRANCDF)
+MODN = mod_xc.o mod_za.o wtime.o /usr/lib/libnetcdff.a /usr/lib/libnetcdf.a $(EXTRANCDF)
MODG = $(MODS) spherdist.o rotang.o
# update ARCH in Make_all.com and
diff -aur hycom/ATLb2.00/force/plot/src/Makefile hycom-Ubuntu-10.04/ATLb2.00/force/plot/src/Makefile
--- hycom/ATLb2.00/force/plot/src/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/ATLb2.00/force/plot/src/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
diff -aur hycom/ATLb2.00/plot/src/Makefile hycom-Ubuntu-10.04/ATLb2.00/plot/src/Makefile
--- hycom/ATLb2.00/plot/src/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/ATLb2.00/plot/src/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
diff -aur hycom/ATLb2.00/relax/plot/src/Makefile hycom-Ubuntu-10.04/ATLb2.00/relax/plot/src/Makefile
--- hycom/ATLb2.00/relax/plot/src/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/ATLb2.00/relax/plot/src/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
diff -aur hycom/GLBb1.50/plot_06/src/Makefile hycom-Ubuntu-10.04/GLBb1.50/plot_06/src/Makefile
--- hycom/GLBb1.50/plot_06/src/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/GLBb1.50/plot_06/src/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
diff -aur hycom/GLBb1.50/plot_07/src/Makefile hycom-Ubuntu-10.04/GLBb1.50/plot_07/src/Makefile
--- hycom/GLBb1.50/plot_07/src/Makefile 2012-11-01 16:45:46.000000000 -0400
+++ hycom-Ubuntu-10.04/GLBb1.50/plot_07/src/Makefile 2016-06-08 15:04:17.776296519 -0400
@@ -81,9 +81,9 @@
tracks.f \
mod_xc.F mod_za.F mod_za_sm.F wtime.F
-NAVO_OBJ = $(PROC_OBJ) getdat_nc.o libnetcdf.a $(EXTRANCDF)
+NAVO_OBJ = $(PROC_OBJ) getdat_nc.o /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
-NAVO_LIB = libnetcdf.a $(EXTRANCDF)
+NAVO_LIB = /usr/lib/libnetcdff.a libnetcdf.a $(EXTRANCDF)
NAVO_SRC = $(PROC_SRC) getdat_nc.f
@woodbri
Copy link
Author

woodbri commented Jun 8, 2016

I have the following packages installed and maybe other that I have forgotten about:

libncarg-bin:amd64/trusty 6.1.2-7 uptodate
libncarg-data:all/trusty 6.1.2-7 uptodate
libncarg-dev:amd64/trusty 6.1.2-7 uptodate
libncarg0:amd64/trusty 6.1.2-7 uptodate
ncl-ncarg:amd64/trusty 6.1.2-7 uptodate
libnetcdf-dev:amd64/trusty 1:4.1.3-7ubuntu2 uptodate
libnetcdfc++4:amd64/trusty 1:4.1.3-7ubuntu2 uptodate
libnetcdfc7:amd64/trusty 1:4.1.3-7ubuntu2 uptodate
libnetcdff5:amd64/trusty 1:4.1.3-7ubuntu2 uptodate
libpdl-netcdf-perl:amd64/trusty 4.16-3build2 uptodate
netcdf-bin:amd64/trusty 1:4.1.3-7ubuntu2 uptodate
python-netcdf:amd64/trusty 2.9.4-1 uptodate
gdal-bin:amd64/trusty 1.10.1+dfsg-5ubuntu1 uptodate
libgdal-dev:amd64/trusty 1.10.1+dfsg-5ubuntu1 uptodate
libgdal1-dev:all/trusty 1.10.1+dfsg-5ubuntu1 uptodate
libgdal1h:amd64/trusty 1.10.1+dfsg-5ubuntu1 uptodate
python-gdal:amd64/trusty 1.10.1+dfsg-5ubuntu1 uptodate
hdf4-tools:amd64/trusty 4.2r10-0ubuntu1 uptodate
hdf5-helpers:amd64/trusty 1.8.11-5ubuntu7 uptodate
hdf5-tools:amd64/trusty 1.8.11-5ubuntu7 uptodate
libhdf4-0:amd64/trusty 4.2r10-0ubuntu1 uptodate
libhdf4-0-alt:amd64/trusty 4.2r10-0ubuntu1 uptodate
libhdf4-alt-dev:amd64/trusty 4.2r10-0ubuntu1 uptodate
libhdf5-7:amd64/trusty 1.8.11-5ubuntu7 uptodate
libhdf5-dev:amd64/trusty 1.8.11-5ubuntu7 uptodate
libhdfeos0:amd64/trusty 2.17v1.00.dfsg.1-5 uptodate
libhe5-hdfeos-dev:amd64/trusty 5.1.14+dfsg.1-1ubuntu1 uptodate
libhe5-hdfeos0:amd64/trusty 5.1.14+dfsg.1-1ubuntu1 uptodate
gfortran:amd64/trusty 4:4.8.2-1ubuntu6 uptodate
gfortran-4.8:amd64/trusty-security 4.8.4-2ubuntu1~14.04.3 uptodate
libgfortran-4.8-dev:amd64/trusty-security 4.8.4-2ubuntu1~14.04.3 uptodate
libgfortran3:amd64/trusty-security 4.8.4-2ubuntu1~14.04.3 uptodate

@woodbri
Copy link
Author

woodbri commented Jun 8, 2016

I got a few warnings about passing a REAL_8 to a REAL_4 function argument. You should be able to find these in the *.log files.

I had the following compilation errors:

diff -aur hycom/ALL/topo/src/Make_bathy_30sec hycom-Ubuntu-10.04/ALL/topo/src/Ma
ke_bathy_30sec
--- hycom/ALL/topo/src/Make_bathy_30sec 2012-07-19 18:12:10.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/topo/src/Make_bathy_30sec    2016-06-08 15:15:51.404314071 -0400
@@ -1,2 +1,7 @@
-pgf90             -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays -c bathy_30sec.f
-pgf90 -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays bathy_30sec.o   interp.o zh.o mod_xc.o mod_za.o wtime.o libnetcdf.a -o bathy_30sec
+gfortran             -fPIC -fno-second-underscore -fconvert=big-endian -O -c bathy_30sec.f
+bathy_30sec.f:584.22:
+
+        write(6,'(/a,i/)')   'NetCDF library call returns ',status
+                      1
+Error: Nonnegative width required in format string at (1)
+make: *** [bathy_30sec.o] Error 1
diff -aur hycom/ALL/topo/src/Make_landsea_30sec hycom-Ubuntu-10.04/ALL/topo/src/Make_landsea_30sec
--- hycom/ALL/topo/src/Make_landsea_30sec   2012-07-19 18:12:10.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/topo/src/Make_landsea_30sec  2016-06-08 15:15:51.544314075 -0400
@@ -1,2 +1,7 @@
-pgf90             -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays -c landsea_30sec.f
-pgf90 -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays landsea_30sec.o interp.o zh.o mod_xc.o mod_za.o wtime.o libnetcdf.a -o landsea_30sec
+gfortran             -fPIC -fno-second-underscore -fconvert=big-endian -O -c landsea_30sec.f
+landsea_30sec.f:471.22:
+
+        write(6,'(/a,i/)')   'NetCDF library call returns ',status
+                      1
+Error: Nonnegative width required in format string at (1)
+make: *** [landsea_30sec.o] Error 1
diff -aur hycom/ALL/topo/src_2.2.72/Make_bathy_30sec hycom-Ubuntu-10.04/ALL/topo/src_2.2.72/Make_bathy_30sec
--- hycom/ALL/topo/src_2.2.72/Make_bathy_30sec  2012-07-19 18:12:10.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/topo/src_2.2.72/Make_bathy_30sec 2016-06-08 15:15:51.404314071 -0400
@@ -1,2 +1,7 @@
-pgf90             -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays -c bathy_30sec.f
-pgf90 -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays bathy_30sec.o   interp.o zh.o mod_xc.o mod_za.o wtime.o libnetcdf.a -o bathy_30sec
+gfortran             -fPIC -fno-second-underscore -fconvert=big-endian -O -c bathy_30sec.f
+bathy_30sec.f:584.22:
+
+        write(6,'(/a,i/)')   'NetCDF library call returns ',status
+                      1
+Error: Nonnegative width required in format string at (1)
+make: *** [bathy_30sec.o] Error 1
diff -aur hycom/ALL/topo/src_2.2.72/Make_landsea_30sec hycom-Ubuntu-10.04/ALL/topo/src_2.2.72/Make_landsea_30sec
--- hycom/ALL/topo/src_2.2.72/Make_landsea_30sec    2012-07-19 18:12:10.000000000 -0400
+++ hycom-Ubuntu-10.04/ALL/topo/src_2.2.72/Make_landsea_30sec   2016-06-08 15:15:51.544314075 -0400
@@ -1,2 +1,7 @@
-pgf90             -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays -c landsea_30sec.f
-pgf90 -g -fastsse -byteswapio -tp k8-64 -mcmodel=medium -Mnolarge_arrays landsea_30sec.o interp.o zh.o mod_xc.o mod_za.o wtime.o libnetcdf.a -o landsea_30sec
+gfortran             -fPIC -fno-second-underscore -fconvert=big-endian -O -c landsea_30sec.f
+landsea_30sec.f:471.22:
+
+        write(6,'(/a,i/)')   'NetCDF library call returns ',status
+                      1
+Error: Nonnegative width required in format string at (1)
+make: *** [landsea_30sec.o] Error 1

And I will note that I have not tried to run any of the code.

@woodbri
Copy link
Author

woodbri commented Jun 8, 2016

How you might use this:

# install any dependent packages see list above
sudo apt-get update
sudo apt-get install ...

# untar code into a ``hycom`` directory
tar xzf hycom_2.2.18_ALL.tar.gz
tar xzf downloads/hycom_2.2.18_ALL.tar.gz
tar xzf downloads/hycom_2.2.18_CODEONLY.tar.gz
tar xzf downloads/hycom_2.2.18_ATLb.tar.gz
tar xzf downloads/hycom_2.2.18_GLBb.tar.gz
tar xzf downloads/hycom_2.2.72_ALL.tar.gz

# patch the hycom directory
patch <  hycom-build-ubuntu-14_04.patch
cd hycom/ALL
csh Make_clean.com
csh Make_all.com
csh Make_ncdf.com

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment