Hi,

it fails with the following error:
...
/builddir/build/BUILD/wsjtx-2.1.2/wsjtx/lib/ft8/filt8.f90:32:14:
   12 |   call four2a(x,NFFT,1,-1,0)              !r2c
      |              2
......
   32 |   call four2a(cx,nfft,1,1,-1)                  !c2r
      |              1
Error: Type mismatch between actual argument at (1) and actual argument at (2) 
(COMPLEX(4)/REAL(4)).
make[2]: *** [CMakeFiles/wsjt_fort_omp.dir/build.make:1197: 
CMakeFiles/wsjt_fort_omp.dir/lib/ft8/filt8.f90.o] Error 1
make[2]: *** Waiting for unfinished jobs....
...

I guess it's because of this gcc-10 change [1]:

* Mismatches between actual and dummy argument lists in a single file are
  now rejected with an error. Use the new option -fallow-argument-mismatch
  to turn these errors into warnings; this option is implied with -std=legacy.
  -Wargument-mismatch has been removed.

When added '-fallow-argument-mismatch' it failed with the following error:

...
/usr/bin/ld: 
CMakeFiles/wsprd.dir/lib/wsprd/jelinek.c.o:/builddir/build/BUILD/wsjtx-2.1.2/wsjtx/lib/wsprd/jelinek.h:13:
 multiple definition of `stack'; 
CMakeFiles/wsprd.dir/lib/wsprd/wsprd.c.o:/builddir/build/BUILD/wsjtx-2.1.2/wsjtx/lib/wsprd/jelinek.h:13:
 first defined here
collect2: error: ld returned 1 exit status
...

This is because of this gcc-10 change [1]:

* GCC now defaults to -fno-common. As a result, global variable accesses are
  more efficient on various targets. In C, global variables with multiple
  tentative definitions now result in linker errors. With -fcommon such
  definitions are silently merged during linking.

When added '-fcommon' it compiled OK.

I think both the Fortran and C code needs to be fixed

thanks & regards

Jaroslav



_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to