cmake build fails under ubuntu 20.04 with tag 5.10_fixed and tag 5.10
Trying to build mHM fails with the listed setting above.
For tag 5.10_fixed
git checkout 5.10_fixed
HEAD is now at b7181fe Update README.md
root@09a3ccc82a3d:/mhm# git status
HEAD detached at 5.10_fixed
nothing to commit, working tree clean
root@09a3ccc82a3d:/mhm# mkdir build && cd build
root@09a3ccc82a3d:/mhm/build# cmake ..
-- The Fortran compiler identification is GNU 9.3.0
-- Check for working Fortran compiler: /usr/bin/f95
-- Check for working Fortran compiler: /usr/bin/f95 -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /usr/bin/f95 supports Fortran 90
-- Checking whether /usr/bin/f95 supports Fortran 90 -- yes
-- build INDEPENDENT of module system OFF
-- search in additional directory for netCDF
-- found /usr/bin/nf-config
-- netcdff includes /usr/include
-- netcdff netcdf link flags -I/usr/include
-- netcdff netcdf library link flags -L/usr/lib/x86_64-linux-gnu -lnetcdff -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -lnetcdf -lnetcdf -ldl -lm
-- found /usr/lib/x86_64-linux-gnu/libnetcdff.so
-- found /usr/lib/x86_64-linux-gnu/libnetcdf.so
-- found /usr/lib/x86_64-linux-gnu/libnetcdf.so
-- found /usr/lib/x86_64-linux-gnu/libdl.so
-- found /usr/lib/x86_64-linux-gnu/libm.so
-- found netcdf libraries /usr/lib/x86_64-linux-gnu/libnetcdff.so;/usr/lib/x86_64-linux-gnu/libnetcdf.so;/usr/lib/x86_64-linux-gnu/libnetcdf.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so
-- found netcdf other flags -Wl,-Bsymbolic-functions;-Wl,-z,relro;-Wl,-z,now
-- Performing Test CPP_FLAG
-- Performing Test CPP_FLAG - Success
-- the following debug flags will be used: -g -pedantic-errors -Wall -W -O -g -Wno-maybe-uninitialized
-- Configuring done
-- Generating done
-- Build files have been written to: /mhm/build
root@09a3ccc82a3d:/mhm/build# make
Scanning dependencies of target mhm
[ 1%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_kind.f90.o
[ 1%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_constants.f90.o
[ 2%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_variables.f90.o
[ 3%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_constants.f90.o
[ 4%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_message.f90.o
[ 5%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_global_variables.f90.o
[ 6%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_constants.f90.o
[ 7%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_append.f90.o
[ 8%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_string_utils.f90.o
[ 9%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_utils.f90.o
[ 10%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_upscaling_operators.f90.o
[ 11%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_pet.f90.o
[ 12%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_runoff.f90.o
[ 13%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_smhorizons.f90.o
[ 14%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_soilmoist.f90.o
[ 15%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_multi_param_reg.f90.o
[ 16%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_timer.f90.o
[ 17%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_eval.f90.o
[ 18%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_file.f90.o
[ 19%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_functions.f90.o
[ 20%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_finish.f90.o
[ 21%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_nml.f90.o
[ 22%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_read_config.f90.o
[ 23%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_netcdf.f90.o
[ 24%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_restart.f90.o
[ 25%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_restart.f90.o
[ 26%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_grid.f90.o
[ 27%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_orderpack.f90.o
[ 28%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_read_latlon.f90.o
[ 29%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_soil_database.f90.o
[ 30%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_startup.f90.o
[ 31%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_ncread.f90.o
[ 32%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_julian.f90.o
[ 33%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_read_forcing_nc.f90.o
[ 34%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_prepare_gridded_lai.f90.o
[ 35%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_read_lut.f90.o
[ 36%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_file.f90.o
[ 37%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_read_spatial_data.f90.o
[ 38%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_read_data.f90.o
[ 39%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_read_wrapper.f90.o
[ 39%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mpr_driver.f90.o
[ 40%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_common_read_config.f90.o
[ 41%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_read_timeseries.f90.o
[ 42%] Building Fortran object CMakeFiles/mhm.dir/src/common/mo_template.f90.o
[ 43%] Building Fortran object CMakeFiles/mhm.dir/src/common_mHM_mRM/mo_common_mHM_mRM_file.f90.o
[ 44%] Building Fortran object CMakeFiles/mhm.dir/src/common_mHM_mRM/mo_common_mHM_mRM_variables.f90.o
[ 45%] Building Fortran object CMakeFiles/mhm.dir/src/common_mHM_mRM/mo_common_mHM_mRM_read_config.f90.o
[ 45%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_optimization_utils.f90.o
[ 46%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_xor4096.f90.o
[ 46%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_anneal.f90.o
[ 47%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_dds.f90.o
[ 48%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_moment.f90.o
[ 49%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_ncwrite.f90.o
[ 50%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_mcmc.f90.o
[ 51%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_sce.f90.o
[ 52%] Building Fortran object CMakeFiles/mhm.dir/src/common_mHM_mRM/mo_optimization.f90.o
[ 53%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_corr.f90.o
[ 54%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_errormeasures.f90.o
[ 55%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_linfit.f90.o
[ 56%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_percentile.f90.o
[ 57%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_mad.f90.o
[ 58%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_spatialsimilarity.f90.o
[ 59%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_standard_score.f90.o
[ 60%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_temporal_aggregation.f90.o
[ 61%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_canopy_interc.f90.o
[ 62%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_file.f90.o
[ 63%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_mhm_constants.f90.o
[ 64%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_global_variables.f90.o
[ 65%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_init_states.f90.o
[ 66%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_spatial_agg_disagg_forcing.f90.o
[ 67%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_meteo_forcings.f90.o
[ 68%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_neutrons.f90.o
c[ 69%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_pet.f90.o
[ 70%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_runoff.f90.o
a[ 71%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_snow_accum_melt.f90.o
[ 72%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_soil_moisture.f90.o
[ 73%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_temporal_disagg_forcing.f90.o
m[ 73%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_mhm.f90.o
[ 73%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_constants.f90.o
[ 74%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_global_variables.f90.o
[ 75%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_file.f90.o
[ 76%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_net_startup.f90.o
[ 77%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_mpr.f90.o
[ 78%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_read_config.f90.o
[ 79%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_read_data.f90.o
[ 80%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_restart.f90.o
[ 81%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_river_head.f90.o
[ 82%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_init.f90.o
[ 83%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_routing.f90.o
[ 84%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_write_fluxes_states.f90.o
[ 85%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_write.f90.o
[ 86%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_restart.f90.o
[ 87%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_write_fluxes_states.f90.o
[ 88%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_mhm_eval.f90.o
[ 89%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_mhm_read_config.f90.o
[ 90%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_signatures.f90.o
[ 91%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_objective_function_runoff.f90.o
[ 92%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_objective_function.f90.o
[ 93%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_read_optional_data.f90.o
[ 94%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_set_netcdf_outputs.f90.o
[ 95%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_startup.f90.o
[ 96%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mo_write_ascii.f90.o
[ 97%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mo_mrm_eval.f90.o
[ 98%] Building Fortran object CMakeFiles/mhm.dir/src/mRM/mrm_driver.f90.o
[ 99%] Building Fortran object CMakeFiles/mhm.dir/src/mHM/mhm_driver.f90.o
[100%] Linking Fortran executable mhm
/usr/bin/ld: unrecognized option '-Bsymbolic-functions;-Wl'
/usr/bin/ld: use the --help option for usage information
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/mhm.dir/build.make:1649: mhm] Error 1
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/mhm.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
For tag 5.10
root@09a3ccc82a3d:/mhm/build# rm -rf *
root@09a3ccc82a3d:/mhm/build# cd ..
root@09a3ccc82a3d:/mhm# git checkout 5.10
Previous HEAD position was b7181fe Update README.md
HEAD is now at 9ce0ec1 merge release into master
root@09a3ccc82a3d:/mhm# cd build/
root@09a3ccc82a3d:/mhm/build# cmake ..
-- The Fortran compiler identification is GNU 9.3.0
-- Check for working Fortran compiler: /usr/bin/f95
-- Check for working Fortran compiler: /usr/bin/f95 -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /usr/bin/f95 supports Fortran 90
-- Checking whether /usr/bin/f95 supports Fortran 90 -- yes
-- build INDEPENDENT of module system OFF
-- search in additional directory for netCDF
-- found /usr/bin/nf-config
-- netcdff includes /usr/include
-- netcdff netcdf link flags -I/usr/include
-- netcdff netcdf library link flags -L/usr/lib/x86_64-linux-gnu -lnetcdff -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -lnetcdf -lnetcdf -ldl -lm
-- found /usr/lib/x86_64-linux-gnu/libnetcdff.so
-- found /usr/lib/x86_64-linux-gnu/libnetcdf.so
-- found /usr/lib/x86_64-linux-gnu/libnetcdf.so
-- found /usr/lib/x86_64-linux-gnu/libdl.so
-- found /usr/lib/x86_64-linux-gnu/libm.so
-- found netcdf libraries /usr/lib/x86_64-linux-gnu/libnetcdff.so;/usr/lib/x86_64-linux-gnu/libnetcdf.so;/usr/lib/x86_64-linux-gnu/libnetcdf.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so
-- found netcdf other flags -Wl,-Bsymbolic-functions;-Wl,-z,relro;-Wl,-z,now
-- Performing Test CPP_FLAG
-- Performing Test CPP_FLAG - Success
-- the following debug flags will be used: -g -pedantic-errors -Wall -W -O -g -Wno-maybe-uninitialized
-- Configuring done
-- Generating done
-- Build files have been written to: /mhm/build
root@09a3ccc82a3d:/mhm/build# make
Scanning dependencies of target mhm
[ 1%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_kind.f90.o
[ 2%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_constants.f90.o
[ 4%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_constants.f90.o
[ 5%] Building Fortran object CMakeFiles/mhm.dir/src/lib/mo_message.f90.o
[ 6%] Building Fortran object CMakeFiles/mhm.dir/src/MPR/mo_mpr_global_variables.f90.o
/mhm/src/MPR/mo_mpr_global_variables.f90:17:6:
17 | use mo_common_variables, only : period
| 1
Fatal Error: Cannot open module file 'mo_common_variables.mod' for reading at (1): No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/mhm.dir/build.make:102: CMakeFiles/mhm.dir/src/MPR/mo_mpr_global_variables.f90.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/mhm.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
The current HEAD of develop
build successfully.
On my local machine (Manjaro), the tag 5.10_fixed and head of develop build successfully, but not 5.10, that fails with the same error as on Ubuntu.