Skip to content

Compile PRMS from source is fail #25

@zhuzhufeifei

Description

@zhuzhufeifei

cd ./mmf; make;
make[1]: Entering directory '/home/feizhu/Downloads/prms-master/mmf'
gcc -O --static -DLINUX -D_UF -c mmf.c
gcc -O --static -DLINUX -D_UF -c parse_args.c
gcc -O --static -DLINUX -D_UF -c alloc_space.c
gcc -O --static -DLINUX -D_UF -c build_lists.c
gcc -O --static -DLINUX -D_UF -c setup_cont.c
gcc -O --static -DLINUX -D_UF -c decl_control.c
gcc -O --static -DLINUX -D_UF -c control_addr.c
gcc -O --static -DLINUX -D_UF -c control_var.c
gcc -O --static -DLINUX -D_UF -c read_params.c
read_params.c: In function ‘error_string’:
read_params.c:1299:49: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 239 [-Wformat-truncation=]
1299 | snprintf (buf, 256, "ERROR: %s; file is %s; line number %d", message, file_name, lineNumber);
| ^~ ~~~~~~~~~
In file included from /usr/include/stdio.h:894,
from read_params.c:16:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 33 or more bytes (assuming 288) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
read_params.c: In function ‘warning_string’:
read_params.c:1312:51: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 237 [-Wformat-truncation=]
1312 | snprintf (buf, 256, "WARNING: %s; file is %s; line number %d", message, file_name, lineNumber);
| ^~ ~~~~~~~~~
In file included from /usr/include/stdio.h:894,
from read_params.c:16:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 35 or more bytes (assuming 290) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
gcc -O --static -DLINUX -D_UF -c sort_dims.c
gcc -O --static -DLINUX -D_UF -c sort_params.c
gcc -O --static -DLINUX -D_UF -c sort_vars.c
gcc -O --static -DLINUX -D_UF -c var_addr.c
gcc -O --static -DLINUX -D_UF -c declvar.c
gcc -O --static -DLINUX -D_UF -c str_to_vals.c
gcc -O --static -DLINUX -D_UF -c declparam.c
declparam.c: In function ‘CHECK_param_in_db’:
declparam.c:551:50: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
551 | snprintf(dim_names, 256, "%s,%s",dim_names,check_param->dimen[i]->name);
| ^
In file included from /usr/include/stdio.h:894,
from declparam.c:17:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 257) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
declparam.c:555:98: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 213 [-Wformat-truncation=]
555 | f (buf1, 256, " The dimensions have been declared as %s and %s.", dimen, dim_names);
| ^~ ~~~~~~~~~

In file included from /usr/include/stdio.h:894,
from declparam.c:17:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 45 or more bytes (assuming 300) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
gcc -O --static -DLINUX -D_UF -c param_addr.c
gcc -O --static -DLINUX -D_UF -c getdim.c
gcc -O --static -DLINUX -D_UF -c timing.c
gcc -O --static -DLINUX -D_UF -c getparam.c
gcc -O --static -DLINUX -D_UF -c umalloc_etc.c
gcc -O --static -DLINUX -D_UF -c julday.c
gcc -O --static -DLINUX -D_UF -c getvar.c
gcc -O --static -DLINUX -D_UF -c julconvert.c
gcc -O --static -DLINUX -D_UF -c readvar.c
gcc -O --static -DLINUX -D_UF -c decldim.c
gcc -O --static -DLINUX -D_UF -c get_times.c
gcc -O --static -DLINUX -D_UF -c batch_run.c
gcc -O --static -DLINUX -D_UF -c read_control.c
read_control.c: In function ‘rc’:
read_control.c:148:77: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 218 [-Wformat-truncation=]
148 | nprintf (buf, 256, "WARNING: invalid type; key = %s, line = %s", key, line);
| ^~ ~~~~

In file included from /usr/include/stdio.h:894,
from read_control.c:17:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 39 or more bytes (assuming 294) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
read_control.c:135:106: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size between 173 and 188 [-Wformat-truncation=]
135 | rol: too many control indexes; size = %ld, key = %s, line = %s", size, key, line);
| ^~ ~~~~

In file included from /usr/include/stdio.h:894,
from read_control.c:17:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 69 or more bytes (assuming 339) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
read_control.c:127:83: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 212 [-Wformat-truncation=]
127 | f (buf, 256, "read_control: negative size; key = %s, line = %s", key, line);
| ^~ ~~~~

In file included from /usr/include/stdio.h:894,
from read_control.c:17:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 45 or more bytes (assuming 300) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
gcc -O --static -DLINUX -D_UF -c dim_addr.c
gcc -O --static -DLINUX -D_UF -c reset_dim.c
gcc -O --static -DLINUX -D_UF -c read_line.c
read_line.c: In function ‘DATA_read_init’:
read_line.c:354:7: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
354 | fgets (line, max_data_ln_len, (fd[i])->fp);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c:367:7: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
367 | fgets ((fd[i])->line, max_data_ln_len, (fd[i])->fp);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c: In function ‘DATA_find_end’:
read_line.c:741:3: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
741 | fgets (line, max_data_ln_len, f_ptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c:743:5: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
743 | fgets (line, max_data_ln_len, f_ptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c:745:3: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
745 | fgets (line, max_data_ln_len, f_ptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c:760:5: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
760 | fgets (line, max_data_ln_len, f_ptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c:762:7: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
762 | fgets (line, max_data_ln_len, f_ptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c:764:5: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
764 | fgets (line, max_data_ln_len, f_ptr);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
read_line.c: In function ‘read_line’:
read_line.c:239:25: warning: argument 1 null where non-null expected [-Wnonnull]
239 | (void)strtod (start_point, &end_point);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from read_line.c:26:
/usr/include/stdlib.h:118:15: note: in a call to function ‘strtod’ declared ‘nonnull’
118 | extern double strtod (const char *__restrict __nptr,
| ^~~~~~
gcc -O --static -DLINUX -D_UF -c get_elem_add.c
gcc -O --static -DLINUX -D_UF -c read_vars.c
gcc -O --static -DLINUX -D_UF -c getdimname.c
gcc -O --static -DLINUX -D_UF -c save_params.c
gcc -O --static -DLINUX -D_UF -c load_param.c
gcc -O --static -DLINUX -D_UF -c check_vars.c
gcc -O --static -DLINUX -D_UF -c create_vstats.c
gcc -O --static -DLINUX -D_UF -c free_vstats.c
gcc -O --static -DLINUX -D_UF -c write_vstats.c
gcc -O --static -DLINUX -D_UF -c call_modules.c
gcc -O --static -DLINUX -D_UF -c call_setdims.c
gcc -O --static -DLINUX -D_UF -c read_datainfo.c
gcc -O --static -DLINUX -D_UF -c putvar.c
gcc -O --static -DLINUX -D_UF -c print_params.c
gcc -O --static -DLINUX -D_UF -c print_vars.c
gcc -O --static -DLINUX -D_UF -c print_model_info.c
gcc -O --static -DLINUX -D_UF -c batch_run_functions.c
batch_run_functions.c: In function ‘single_run_pre_init’:
batch_run_functions.c:133:83: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 207 [-Wformat-truncation=]
133 | tf (err, 256, "ERROR - single_run: Could not open statvar file '%s'\n",
| ^~

134 | statvar_path);
| ~~~~~~~~~~~~

In file included from /usr/include/stdio.h:894,
from batch_run_functions.c:14:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output between 52 and 307 bytes into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
batch_run_functions.c:170:34: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
170 | snprintf (buf, 256, "%s.%s", ani_path, aniVar_names[i]);
| ^
In file included from /usr/include/stdio.h:894,
from batch_run_functions.c:14:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 257) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
batch_run_functions.c:212:34: warning: ‘__builtin___snprintf_chk’ output may be truncated before the last format character [-Wformat-truncation=]
212 | snprintf (buf, 256, "%s.%s", ani_path, ani_out_dims[i]->name);
| ^
In file included from /usr/include/stdio.h:894,
from batch_run_functions.c:14:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output 2 or more bytes (assuming 257) into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
batch_run_functions.c:214:83: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 211 [-Wformat-truncation=]
214 | tf (err, 256, "ERROR - single_run: Could not open ani file '%s'\n", buf);
| ^~ ~~~

In file included from /usr/include/stdio.h:894,
from batch_run_functions.c:14:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:71:10: note: ‘__builtin___snprintf_chk’ output between 48 and 303 bytes into a destination of size 256
71 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
gcc -O --static -DLINUX -D_UF -c graph_single_run.c
gcc -O --static -DLINUX -D_UF -c control_array.c
ar ruv ../mmf/libmmf.a mmf.o parse_args.o alloc_space.o build_lists.o setup_cont.o decl_control.o control_addr.o control_var.o read_params.o sort_dims.o sort_params.o sort_vars.o var_addr.o declvar.o str_to_vals.o declparam.o param_addr.o getdim.o timing.o getparam.o umalloc_etc.o julday.o getvar.o julconvert.o readvar.o decldim.o get_times.o batch_run.o read_control.o dim_addr.o reset_dim.o read_line.o get_elem_add.o read_vars.o getdimname.o save_params.o load_param.o check_vars.o create_vstats.o free_vstats.o write_vstats.o call_modules.o call_setdims.o read_datainfo.o putvar.o print_params.o print_vars.o print_model_info.o batch_run_functions.o graph_single_run.o control_array.o call_setdims.o call_modules.o
ar: u' modifier ignored since D' is the default (see `U')
ar: creating ../mmf/libmmf.a
a - mmf.o
a - parse_args.o
a - alloc_space.o
a - build_lists.o
a - setup_cont.o
a - decl_control.o
a - control_addr.o
a - control_var.o
a - read_params.o
a - sort_dims.o
a - sort_params.o
a - sort_vars.o
a - var_addr.o
a - declvar.o
a - str_to_vals.o
a - declparam.o
a - param_addr.o
a - getdim.o
a - timing.o
a - getparam.o
a - umalloc_etc.o
a - julday.o
a - getvar.o
a - julconvert.o
a - readvar.o
a - decldim.o
a - get_times.o
a - batch_run.o
a - read_control.o
a - dim_addr.o
a - reset_dim.o
a - read_line.o
a - get_elem_add.o
a - read_vars.o
a - getdimname.o
a - save_params.o
a - load_param.o
a - check_vars.o
a - create_vstats.o
a - free_vstats.o
a - write_vstats.o
a - call_modules.o
a - call_setdims.o
a - read_datainfo.o
a - putvar.o
a - print_params.o
a - print_vars.o
a - print_model_info.o
a - batch_run_functions.o
a - graph_single_run.o
a - control_array.o
a - call_setdims.o
a - call_modules.o
ranlib ../mmf/libmmf.a
make[1]: Leaving directory '/home/feizhu/Downloads/prms-master/mmf'
cd ./prms; make;
make[1]: Entering directory '/home/feizhu/Downloads/prms-master/prms'
gfortran -c -O --static -fbounds-check -Wall -fno-second-underscore call_modules.f90
gfortran -c -O --static -fbounds-check -Wall -fno-second-underscore basin.f90
basin.f90:267:58:

264 | IF ( getparam(MODNAME, 'hru_area', Nhru, 'real', Hru_area)/=0 ) CALL read_error(2, 'hru_area')
| 2
......
267 | IF ( getparam(MODNAME, 'hru_type', Nhru, 'integer', Hru_type)/=0 ) CALL read_error(2, 'hru_type')
| 1
Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(4)).
basin.f90:268:58:

264 | IF ( getparam(MODNAME, 'hru_area', Nhru, 'real', Hru_area)/=0 ) CALL read_error(2, 'hru_area')
| 2
......
268 | IF ( getparam(MODNAME, 'cov_type', Nhru, 'integer', Cov_type)/=0 ) CALL read_error(2, 'cov_type')
| 1
Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(4)).
basin.f90:271:57:

264 | IF ( getparam(MODNAME, 'hru_area', Nhru, 'real', Hru_area)/=0 ) CALL read_error(2, 'hru_area')
| 2
......
271 | IF ( getparam(MODNAME, 'elev_units', 1, 'integer', Elev_units)/=0 ) CALL read_error(2, 'elev_units')
| 1
Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(4)).
basin.f90:296:63:

264 | IF ( getparam(MODNAME, 'hru_area', Nhru, 'real', Hru_area)/=0 ) CALL read_error(2, 'hru_area')
| 2

......
296 | IF ( getparam(MODNAME, 'lake_hru_id', Nhru, 'integer', Lake_hru_id)/=0 ) CALL read_error(1, 'lake_hru_id')
| 1

Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(4)).
basin.f90:299:64:

264 | IF ( getparam(MODNAME, 'hru_area', Nhru, 'real', Hru_area)/=0 ) CALL read_error(2, 'hru_area')
| 2

......
299 | IF ( getparam(MODNAME, 'lake_type', Nlake, 'integer', Lake_type)/=0 ) CALL read_error(2, 'lake_type')
| 1

Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(4)).
make[1]: *** [Makefile:197: basin.o] Error 1
make[1]: Leaving directory '/home/feizhu/Downloads/prms-master/prms'
make: *** [Makefile:17: standard] Error 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions