visit-dav / visit

VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://visit.llnl.gov
BSD 3-Clause "New" or "Revised" License
433 stars 111 forks source link

Problems building AdvIO, cfitsio, pidx with g++14, Fedora40 docker container #19570

Open biagas opened 4 months ago

biagas commented 4 months ago

Describe the bug

In a Fedora40 docker container, the three libraries failed to build for different reasons. The g++ version is 14.

AdvIO:

+ env CXX=g++ CC=gcc 'CFLAGS= -m64 -fPIC -Wno-error=implicit-function-declaration' 'CXXFLAGS= -m64 -fPIC  -O2' ./configure --prefix=/home/visit/third-party/AdvIO/1.2/linux-x86_64_gcc-14.1 --disable-gtktest
creating cache ./config.cache
checking host system type... configure: error: can not guess host type; you must specify one

cfitsio:

checking for gcc... gcc
[?4ming whether the C compiler (gcc  -m64 -fPIC -Wno-error=implicit-function-declaration ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables

pidx:

/home/visit/PIDX-0.9.3/pidx/PIDX_variable.c:219:72: error: assignment to ‘unsigned char **’ from incompatible pointer type ‘void **’ [-Wincompatible-pointer-types]
  219 |   variable->sim_patch[variable->sim_patch_count]->read_particle_buffer = write_to_this_buffer;
      |                                                                        ^
make[2]: *** [pidx/CMakeFiles/pidx.dir/build.make:1210: pidx/CMakeFiles/pidx.dir/PIDX_variable.c.o] Error 1
markcmiller86 commented 4 months ago

I suspect this is because the configure logic we are relying on at this point in years old for some of these packages we have not updated in years. In a few cases, I've been able to fix issues like these by explicitly setting --build and/or --host configure flags or making some one-line patches to configure script. But, probably best to update these libs.