First Compiling Efforts

Discussion on computers, ROMS installation and compiling

Moderators: arango, robertson

Post Reply
Message
Author
nils.lindeen
Posts: 19
Joined: Fri Jul 30, 2010 3:56 am
Location: Pontifica Universidad Catolica de Chile

First Compiling Efforts

#1 Unread post by nils.lindeen »

Hi,
I am rather new to ROMS, and begining to get to know how to compile and run it. I followed a few basic tutorials, like:

https://www.myroms.org/wiki/index.php/ROMS_UNSW2008
viewtopic.php?t=2012

Following the first one, I created a separate file for my projects, in which I created a sub file to compile the upwelling example. I already redirected my NetCDF include and lib directories to their location on my computer, in the build.bash. I tried to compile it after this and recieved the following text, with an error at the end:

rm -f -r core *.ipo /home/nils/Projects/upwelling/Build /home/nils/make_macros.mk
makefile:241: INCLUDING FILE /home/nils/make_macros.mk WHICH CONTAINS APPLICATION-DEPENDENT MAKE DEFINITIONS
cp -f /usr/local/netcdf-4.1.1/include/netcdf.mod /home/nils/Projects/upwelling/Build
cp -f /usr/local/netcdf-4.1.1/include/typesizes.mod /home/nils/Projects/upwelling/Build
./ROMS/Bin/sfmakedepend --cpp --fext=f90 --file=- --objdir=/home/nils/Projects/upwelling/Build -DROMS_HEADER="upwelling.h" -I ROMS/Include -I /home/nils/Projects/upwelling -I ROMS/Nonlinear -I ROMS/Nonlinear/Biology -I ROMS/Nonlinear/Sediment -I ROMS/Utility -I ROMS/Drivers -I ROMS/Functionals -I /home/nils/Projects/upwelling -I Master -I Compilers --silent --moddir /home/nils/Projects/upwelling/Build ROMS/Nonlinear/bbl.F ROMS/Nonlinear/bc_2d.F ROMS/Nonlinear/bc_3d.F ROMS/Nonlinear/bc_bry2d.F ROMS/Nonlinear/bc_bry3d.F ROMS/Nonlinear/bulk_flux.F ROMS/Nonlinear/bvf_mix.F ROMS/Nonlinear/conv_2d.F ROMS/Nonlinear/conv_3d.F ROMS/Nonlinear/conv_bry2d.F ROMS/Nonlinear/conv_bry3d.F ROMS/Nonlinear/diag.F ROMS/Nonlinear/exchange_2d.F ROMS/Nonlinear/exchange_3d.F ROMS/Nonlinear/forcing.F ROMS/Nonlinear/frc_adjust.F ROMS/Nonlinear/get_data.F ROMS/Nonlinear/get_idata.F ROMS/Nonlinear/gls_corstep.F ROMS/Nonlinear/gls_prestep.F ROMS/Nonlinear/hmixing.F ROMS/Nonlinear/ini_fields.F ROMS/Nonlinear/initial.F ROMS/Nonlinear/interp_floats.F ROMS/Nonlinear/lmd_bkpp.F ROMS/Nonlinear/lmd_skpp.F ROMS/Nonlinear/lmd_swfrac.F ROMS/Nonlinear/lmd_vmix.F ROMS/Nonlinear/main2d.F ROMS/Nonlinear/main3d.F ROMS/Nonlinear/mpdata_adiff.F ROMS/Nonlinear/my25_corstep.F ROMS/Nonlinear/my25_prestep.F ROMS/Nonlinear/obc_adjust.F ROMS/Nonlinear/obc_volcons.F ROMS/Nonlinear/omega.F ROMS/Nonlinear/output.F ROMS/Nonlinear/pre_step3d.F ROMS/Nonlinear/prsgrd.F ROMS/Nonlinear/radiation_stress.F ROMS/Nonlinear/rho_eos.F ROMS/Nonlinear/rhs3d.F ROMS/Nonlinear/set_avg.F ROMS/Nonlinear/set_data.F ROMS/Nonlinear/set_depth.F ROMS/Nonlinear/set_massflux.F ROMS/Nonlinear/set_tides.F ROMS/Nonlinear/set_vbc.F ROMS/Nonlinear/set_zeta.F ROMS/Nonlinear/step2d.F ROMS/Nonlinear/step3d_t.F ROMS/Nonlinear/step3d_uv.F ROMS/Nonlinear/step_floats.F ROMS/Nonlinear/t3dbc_im.F ROMS/Nonlinear/t3dmix.F ROMS/Nonlinear/tkebc_im.F ROMS/Nonlinear/u2dbc_im.F ROMS/Nonlinear/u3dbc_im.F ROMS/Nonlinear/uv3dmix.F ROMS/Nonlinear/v2dbc_im.F ROMS/Nonlinear/v3dbc_im.F ROMS/Nonlinear/vwalk_floats.F ROMS/Nonlinear/wetdry.F ROMS/Nonlinear/wvelocity.F ROMS/Nonlinear/zetabc.F ROMS/Nonlinear/Biology/biology.F ROMS/Nonlinear/Sediment/sed_bed.F ROMS/Nonlinear/Sediment/sed_bedload.F ROMS/Nonlinear/Sediment/sed_fluxes.F ROMS/Nonlinear/Sediment/sediment.F ROMS/Nonlinear/Sediment/sed_settling.F ROMS/Nonlinear/Sediment/sed_surface.F ROMS/Functionals/analytical.F ROMS/Utility/abort.F ROMS/Utility/array_modes.F ROMS/Utility/back_cost.F ROMS/Utility/cgradient.F ROMS/Utility/checkadj.F ROMS/Utility/checkdefs.F ROMS/Utility/checkerror.F ROMS/Utility/checkvars.F ROMS/Utility/close_io.F ROMS/Utility/congrad.F ROMS/Utility/cost_grad.F ROMS/Utility/def_avg.F ROMS/Utility/def_diags.F ROMS/Utility/def_dim.F ROMS/Utility/def_error.F ROMS/Utility/def_floats.F ROMS/Utility/def_gst.F ROMS/Utility/def_hessian.F ROMS/Utility/def_his.F ROMS/Utility/def_impulse.F ROMS/Utility/def_info.F ROMS/Utility/def_ini.F ROMS/Utility/def_lanczos.F ROMS/Utility/def_mod.F ROMS/Utility/def_norm.F ROMS/Utility/def_rst.F ROMS/Utility/def_station.F ROMS/Utility/def_tides.F ROMS/Utility/def_var.F ROMS/Utility/distribute.F ROMS/Utility/dotproduct.F ROMS/Utility/extract_obs.F ROMS/Utility/extract_sta.F ROMS/Utility/frc_weak.F ROMS/Utility/gasdev.F ROMS/Utility/get_2dfld.F ROMS/Utility/get_2dfldr.F ROMS/Utility/get_3dfld.F ROMS/Utility/get_3dfldr.F ROMS/Utility/get_bounds.F ROMS/Utility/get_cycle.F ROMS/Utility/get_date.F ROMS/Utility/get_grid.F ROMS/Utility/get_gst.F ROMS/Utility/get_ngfld.F ROMS/Utility/get_ngfldr.F ROMS/Utility/get_state.F ROMS/Utility/get_varcoords.F ROMS/Utility/grid_coords.F ROMS/Utility/ini_adjust.F ROMS/Utility/ini_hmixcoef.F ROMS/Utility/ini_lanczos.F ROMS/Utility/inp_par.F ROMS/Utility/interpolate.F ROMS/Utility/lubksb.F ROMS/Utility/ludcmp.F ROMS/Utility/metrics.F ROMS/Utility/mp_exchange.F ROMS/Utility/mp_routines.F ROMS/Utility/nf_fread2d_bry.F ROMS/Utility/nf_fread2d.F ROMS/Utility/nf_fread3d_bry.F ROMS/Utility/nf_fread3d.F ROMS/Utility/nf_fread4d.F ROMS/Utility/nf_fwrite2d_bry.F ROMS/Utility/nf_fwrite2d.F ROMS/Utility/nf_fwrite3d_bry.F ROMS/Utility/nf_fwrite3d.F ROMS/Utility/nf_fwrite4d.F ROMS/Utility/normalization.F ROMS/Utility/nrutil.F ROMS/Utility/obs_cost.F ROMS/Utility/obs_depth.F ROMS/Utility/obs_initial.F ROMS/Utility/obs_read.F ROMS/Utility/obs_write.F ROMS/Utility/oi_update.F ROMS/Utility/packing.F ROMS/Utility/posterior.F ROMS/Utility/posterior_var.F ROMS/Utility/ran1.F ROMS/Utility/random_ic.F ROMS/Utility/ran_state.F ROMS/Utility/regrid.F ROMS/Utility/rep_matrix.F ROMS/Utility/set_2dfld.F ROMS/Utility/set_2dfldr.F ROMS/Utility/set_3dfld.F ROMS/Utility/set_3dfldr.F ROMS/Utility/set_diags.F ROMS/Utility/set_ngfld.F ROMS/Utility/set_ngfldr.F ROMS/Utility/set_scoord.F ROMS/Utility/set_weights.F ROMS/Utility/shapiro.F ROMS/Utility/state_addition.F ROMS/Utility/state_copy.F ROMS/Utility/state_dotprod.F ROMS/Utility/state_initialize.F ROMS/Utility/state_product.F ROMS/Utility/state_scale.F ROMS/Utility/stats_modobs.F ROMS/Utility/stiffness.F ROMS/Utility/strings.F ROMS/Utility/sum_grad.F ROMS/Utility/timers.F ROMS/Utility/utility.F ROMS/Utility/vorticity.F ROMS/Utility/white_noise.F ROMS/Utility/wpoints.F ROMS/Utility/wrt_avg.F ROMS/Utility/wrt_diags.F ROMS/Utility/wrt_error.F ROMS/Utility/wrt_floats.F ROMS/Utility/wrt_gst.F ROMS/Utility/wrt_hessian.F ROMS/Utility/wrt_his.F ROMS/Utility/wrt_impulse.F ROMS/Utility/wrt_info.F ROMS/Utility/wrt_ini.F ROMS/Utility/wrt_rst.F ROMS/Utility/wrt_station.F ROMS/Utility/wrt_tides.F ROMS/Utility/zeta_balance.F ROMS/Modules/mod_arrays.F ROMS/Modules/mod_average.F ROMS/Modules/mod_bbl.F ROMS/Modules/mod_biology.F ROMS/Modules/mod_boundary.F ROMS/Modules/mod_clima.F ROMS/Modules/mod_coupler.F ROMS/Modules/mod_coupling.F ROMS/Modules/mod_diags.F ROMS/Modules/mod_eclight.F ROMS/Modules/mod_eoscoef.F ROMS/Modules/mod_floats.F ROMS/Modules/mod_forces.F ROMS/Modules/mod_fourdvar.F ROMS/Modules/mod_grid.F ROMS/Modules/mod_iounits.F ROMS/Modules/mod_kinds.F ROMS/Modules/mod_mixing.F ROMS/Modules/mod_ncparam.F ROMS/Modules/mod_nesting.F ROMS/Modules/mod_netcdf.F ROMS/Modules/mod_obs.F ROMS/Modules/mod_ocean.F ROMS/Modules/mod_parallel.F ROMS/Modules/mod_param.F ROMS/Modules/mod_scalars.F ROMS/Modules/mod_sedbed.F ROMS/Modules/mod_sediment.F ROMS/Modules/mod_sources.F ROMS/Modules/mod_stepping.F ROMS/Modules/mod_storage.F ROMS/Modules/mod_strings.F ROMS/Modules/mod_tides.F Master/esmf_roms.F Master/master.F Master/ocean_control.F Master/ocean_coupler.F Master/propagator.F Master/roms_export.F Master/roms_import.F > /home/nils/Projects/upwelling/Build/MakeDepend
cp -p /home/nils/make_macros.mk /home/nils/Projects/upwelling/Build
makefile:237: INCLUDING FILE /home/nils/Projects/upwelling/Build/make_macros.mk WHICH CONTAINS APPLICATION-DEPENDENT MAKE DEFINITIONS
/usr/bin/cpp -P -traditional -DLINUX -DI686 -DIFORT -D'ROOT_DIR="/home/nils/MyDir"' -DUPWELLING -D'HEADER="upwelling.h"' -D'ROMS_HEADER="/home/nils/Projects/upwelling/upwelling.h"' -DNestedGrids=1 -D'ANALYTICAL_DIR="/home/nils/Projects/upwelling"' -D'MY_ANALYTICAL="on"' -D'SVN_REV="510M"' -IROMS/Include -I/home/nils/Projects/upwelling -IROMS/Nonlinear -IROMS/Nonlinear/Biology -IROMS/Nonlinear/Sediment -IROMS/Utility -IROMS/Drivers -IROMS/Functionals -I/home/nils/Projects/upwelling -IMaster -ICompilers -D'HEADER_DIR="/home/nils/Projects/upwelling"' ROMS/Nonlinear/bbl.F > /home/nils/Projects/upwelling/Build/bbl.f90
ROMS/Bin/cpp_clean /home/nils/Projects/upwelling/Build/bbl.f90
/usr/bin/cpp -P -traditional -DLINUX -DI686 -DIFORT -D'ROOT_DIR="/home/nils/MyDir"' -DUPWELLING -D'HEADER="upwelling.h"' -D'ROMS_HEADER="/home/nils/Projects/upwelling/upwelling.h"' -DNestedGrids=1 -D'ANALYTICAL_DIR="/home/nils/Projects/upwelling"' -D'MY_ANALYTICAL="on"' -D'SVN_REV="510M"' -IROMS/Include -I/home/nils/Projects/upwelling -IROMS/Nonlinear -IROMS/Nonlinear/Biology -IROMS/Nonlinear/Sediment -IROMS/Utility -IROMS/Drivers -IROMS/Functionals -I/home/nils/Projects/upwelling -IMaster -ICompilers -D'HEADER_DIR="/home/nils/Projects/upwelling"' ROMS/Nonlinear/bc_2d.F > /home/nils/Projects/upwelling/Build/bc_2d.f90
ROMS/Bin/cpp_clean /home/nils/Projects/upwelling/Build/bc_2d.f90
/usr/bin/cpp -P -traditional -DLINUX -DI686 -DIFORT -D'ROOT_DIR="/home/nils/MyDir"' -DUPWELLING -D'HEADER="upwelling.h"' -D'ROMS_HEADER="/home/nils/Projects/upwelling/upwelling.h"' -DNestedGrids=1 -D'ANALYTICAL_DIR="/home/nils/Projects/upwelling"' -D'MY_ANALYTICAL="on"' -D'SVN_REV="510M"' -IROMS/Include -I/home/nils/Projects/upwelling -IROMS/Nonlinear -IROMS/Nonlinear/Biology -IROMS/Nonlinear/Sediment -IROMS/Utility -IROMS/Drivers -IROMS/Functionals -I/home/nils/Projects/upwelling -IMaster -ICompilers -D'HEADER_DIR="/home/nils/Projects/upwelling"' ROMS/Nonlinear/exchange_2d.F > /home/nils/Projects/upwelling/Build/exchange_2d.f90
ROMS/Bin/cpp_clean /home/nils/Projects/upwelling/Build/exchange_2d.f90
/usr/bin/cpp -P -traditional -DLINUX -DI686 -DIFORT -D'ROOT_DIR="/home/nils/MyDir"' -DUPWELLING -D'HEADER="upwelling.h"' -D'ROMS_HEADER="/home/nils/Projects/upwelling/upwelling.h"' -DNestedGrids=1 -D'ANALYTICAL_DIR="/home/nils/Projects/upwelling"' -D'MY_ANALYTICAL="on"' -D'SVN_REV="510M"' -IROMS/Include -I/home/nils/Projects/upwelling -IROMS/Nonlinear -IROMS/Nonlinear/Biology -IROMS/Nonlinear/Sediment -IROMS/Utility -IROMS/Drivers -IROMS/Functionals -I/home/nils/Projects/upwelling -IMaster -ICompilers -D'HEADER_DIR="/home/nils/Projects/upwelling"' ROMS/Modules/mod_param.F > /home/nils/Projects/upwelling/Build/mod_param.f90
ROMS/Bin/cpp_clean /home/nils/Projects/upwelling/Build/mod_param.f90
/usr/bin/cpp -P -traditional -DLINUX -DI686 -DIFORT -D'ROOT_DIR="/home/nils/MyDir"' -DUPWELLING -D'HEADER="upwelling.h"' -D'ROMS_HEADER="/home/nils/Projects/upwelling/upwelling.h"' -DNestedGrids=1 -D'ANALYTICAL_DIR="/home/nils/Projects/upwelling"' -D'MY_ANALYTICAL="on"' -D'SVN_REV="510M"' -IROMS/Include -I/home/nils/Projects/upwelling -IROMS/Nonlinear -IROMS/Nonlinear/Biology -IROMS/Nonlinear/Sediment -IROMS/Utility -IROMS/Drivers -IROMS/Functionals -I/home/nils/Projects/upwelling -IMaster -ICompilers -D'HEADER_DIR="/home/nils/Projects/upwelling"' ROMS/Modules/mod_kinds.F > /home/nils/Projects/upwelling/Build/mod_kinds.f90
ROMS/Bin/cpp_clean /home/nils/Projects/upwelling/Build/mod_kinds.f90
cd /home/nils/Projects/upwelling/Build; -c -heap-arrays -fp-model precise -g -check uninit -ftrapuv -traceback mod_kinds.f90
/bin/sh: -c: not found
make: *** [/home/nils/Projects/upwelling/Build/mod_kinds.o] Error 127

I am very sorry for my rookie questions, but I have been searching for similar errors, but have been unable to solve my problem. I hope someone knows how to solve this.

I have a basic question though, should my ROMS code be able to compile without making any changes on it, except changes on the build and make file, or should I make some other changes with respect to the location of certain files on my computer? Because looking at these files I see locations that direct me to an "arango" file, which is clearly the direction in the original computer. My question is if all directions I see, I must change to my computers locations?


Thank you very much.

Nils

leonjld
Posts: 51
Joined: Fri Feb 27, 2004 6:30 pm
Location: NOAA/NESDIS/STAR

Re: First Compiling Efforts

#2 Unread post by leonjld »

if you downloaded the most recent version of roms (ver 3.3), I think you just need to modify the 'Makefile' and one .mk file in the Compiler directory depending on which OS and compiler you use. If you use linux and ifort, you need to edit Compilers/Linux-ifort.mk. just read https://www.myroms.org/wiki/index.php/makefile

after modifying the two files you just type 'make' and that's it.

User avatar
kate
Posts: 4088
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: First Compiling Efforts

#3 Unread post by kate »

The particular problem you are seeing is from the name of the compiler being undefined. With ifort, you probably have:

Code: Select all

              FC := ifort
followed by:

Code: Select all

 ifdef USE_MPIF90
               FC := mpif90
 else
then:

Code: Select all

#
# Use full path of compiler.
#
               FC := $(shell which ${FC})
               LD := $(FC)
Is ifort on your path? How about mpif90?

See also: https://www.myroms.org/wiki/index.php/F ... mpile_time

Post Reply