Closed bear0l closed 2 years ago
Hello. Unfortunately, GCC 4.8.1 is way too old. The oldest version I am able to support is version 7 and I am likely to move even further in some time. The oldest version currently supported by GCC (https://gcc.gnu.org) is version 9. The error message for GCC says all important "internal compiler error, Please submit a full bug report.". It is an internal error in the compiler. Given how old it is, it is no longer sensible to submit any report, though.
Regarding the Intel compiler it is most likely also a compiler problem, but I have already deleted all old versions and I can only test the current free oneAPI version (https://www.intel.com/content/www/us/en/developer/tools/oneapi/hpc-toolkit.html) which works OK.
Please note that even if you do not have any access to the root account on some shared computer or supercomputer, it is not that difficult to install a new compiler into your home directory.
Thanks for your clarification. The information you provided was very useful. The compilation failure is indeed due to the old version of the compiler. As you said, when I try to use a newer version of the compiler(e.g. gcc/8.3.0, intel/20.4.304 ), the compilation runs fine. In fact, I tested whether the different compiler versions provided by the server could compile PoisFFT, and here are the results:
Also, for the openmp directive in the intel compiler, '-qopenmp' is recommended instead of '-openmp', so I guess it would be better to change line 105 inside your SConstruct file to "omp_flag = ' -qopenmp'".
Thanks again for your quick reply.
You are right, I did the change to -qopenmp
a few months ago locally, but I did not commit it yet and I will do so.
Hello, I tried to install your software on the server, but have some problems in the installation of c_binding,f90. The version of Linux is Red Hat Enterprise 7.3. Firstly, I tried to compile the lib with gcc-4.8.4,the error reports :
f951: internal compiler error: Segmentation fault 0x8a05ff crash_signal ../../gcc-4.8.4/gcc/toplev.c:332 0x57be32 load_derived_extensions ../../gcc-4.8.4/gcc/fortran/module.c:4245 0x57be32 read_module ../../gcc-4.8.4/gcc/fortran/module.c:4783 0x57c38b gfc_use_module ../../gcc-4.8.4/gcc/fortran/module.c:6216 0x57d453 gfc_use_modules() ../../gcc-4.8.4/gcc/fortran/module.c:6339 0x582317 use_modules ../../gcc-4.8.4/gcc/fortran/parse.c:86 0x583ba4 decode_statement ../../gcc-4.8.4/gcc/fortran/parse.c:301 0x584ea4 next_free ../../gcc-4.8.4/gcc/fortran/parse.c:782 0x584ea4 next_statement ../../gcc-4.8.4/gcc/fortran/parse.c:975 0x585534 parse_spec ../../gcc-4.8.4/gcc/fortran/parse.c:2743 0x588431 parse_module ../../gcc-4.8.4/gcc/fortran/parse.c:4311 0x588431 gfc_parse_file() ../../gcc-4.8.4/gcc/fortran/parse.c:4592 0x5c40f5 gfc_be_parse_file ../../gcc-4.8.4/gcc/fortran/f95-lang.c:189 Please submit a full bug report.
Then I tried to use intel compiler (ifort version 19.0.5.281) , and the error report: ./c_new-inc.f90(29): error #8212: Omitted field is not initialized. Field initialization missing: [BCS] f_D = PoisFFT_Solver1D_DP(int(nxyz(1:1:-1)), & --------------------------------^ compilation aborted for c_binding.f90 (code 1) scons: *** [/bwfefs/home/.../test_PoisFFT/PoisFFT-master/bin/intel/c_binding.os] Error 1
Could you please tell me what's wrong and how to fix it.