[Users] Problem installing the ETK
José Ferreira
jpmferreira at ua.pt
Wed Jun 4 10:18:38 CDT 2025
Hello Konstantin,
I've sucessfully compiled the toolkit on an Arch Linux machine with the
option files that I'm sending as an attachment.
The dependencies are all listed in the option file inside, and are all
available and up-to-date in the official repositories.
There is one small caveat: one of the updates of HDF5 in the Arch
repositories somehow broke the Toolkit compilation, now it fails to find
HDF5.
I wanted to look into it and figure out whats going on, but I decided to
be lazy instead and just downgrade HDF5.
Version 1.14.5-1 in repositories works.
Since I don't have any other package depending on HDF5, this works fine
for me.
If you figure out what happened, please do let me know.
Also, when I started using the toolkit, I was getting random core dumps
on Arch and Arch based distros.
This hasn't happened to me in many months now, so it was probably
something to do with a specific version of one of the libraries.
Either way, if that does happen to you, here's the bug report that I
made:
https://bitbucket.org/einsteintoolkit/tickets/issues/2774/openmp-heisenbug-with-default-thornfile
Best,
José Ferreira
On 04/06/25 13:02, Kaufhold, Konstantin wrote:
> Hi,
>
> I am currently trying to install the ETK to my personal laptop for a
> project.
> I am using an ArchLinux system with linux 6.14.9. The processor in my
> laptop is an AMD Ryzen 7 PRO 8840U.
> While trying to compile the toolkit I get the error
>
> /usr/include/c++/15.1.1/cstdlib:83:15: schwerwiegender Fehler:
> stdlib.h: Datei oder Verzeichnis nicht gefunden
> 83 | #include_next <stdlib.h>
>
> which then causes the compilation to fail.
> The only version of the bug I found, which I could reproduce locally,
> was using "gcc -isystem /usr/include" as described in an bug report
> (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129
> <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129>) from 2016 for
> gcc. I tried compiling a small Hello World script written in C++ with
> "gcc", "gcc -I" and gcc -isystem" and the last option gave me the same
> error, the rest worked just fine.
> But I'm not sure if that is the real reason as other OptionFiles
> indicate, that gcc can and has been successfully used to compile the
> ETK and I have not seen the "-isystem" glag invoked anywhere, so I'm
> guessing the the error is on my side, although I have no clue where
> exactly.
> I have attached the make.log file and my OptionsList, as I had to
> explicitly give the ETK the HDF folders and then decided to do it for
> most external libraries I saw in the list and have locally on my system.
> I appreciate any ideas or advice on fixing this problem and thank you
> in advance for taking the time to look over my problem.
>
> With best regards
>
> Konstantin Kaufhold
>
> _______________________________________________
> Users mailing list
> Users at einsteintoolkit.org
> http://lists.einsteintoolkit.org/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.einsteintoolkit.org/pipermail/users/attachments/20250604/b8ea2238/attachment.htm>
-------------- next part --------------
# Cactus configuration for Arch and Arch-based distros
# NOTES:
# - `-Wno-error=incompatible-pointer-types` removes error temporarily, see https://bitbucket.org/einsteintoolkit/tickets/issues/2802/compilation-faiulres-in-twopunctures_bbhsf
# - AEILocalInterp defines `bool` which in `c23` is a keywork, specify C17 standard as a workaround
# - The toolkit raises an error with lastest HDF5 version. Is this a toolkit or Arch errror? Version 1.14.5-1 in repos works
# Packages to install (all available on official repos)
# - gcc
# - gcc-fortran
# - hdf5
# - blas-openblas
# - openmpi
# - gsl
# - hwloc
# - libjpeg-turbo
# - openssl
# - fftw
# - boost
## Decide which flags will be used at compile-time
OPTIMISE = yes
WARN = yes
DEBUG = no
PROFILE = no
OPENMP = yes
## Preprocessors and Compilers
CPP = cpp
FPP = cpp
CC = gcc
CXX = g++
F77 = gfortran
F90 = gfortran
## Default flags
CPPFLAGS = -DMPICH_IGNORE_CXX_SEEK
FPPFLAGS = -traditional
CFLAGS = -g3 -march=native -Wno-error=incompatible-pointer-types -std=gnu17
CXXFLAGS = -g3 -march=native -Wno-error=incompatible-pointer-types -std=gnu++17
F77FLAGS = -g3 -march=native -fcray-pointer -m128bit-long-double -ffixed-line-length-none -fno-range-check
F90FLAGS = -g3 -march=native -fcray-pointer -m128bit-long-double -ffixed-line-length-none -fno-range-check
LDFLAGS = -rdynamic
## Optimization flags
CPP_OPTIMISE_FLAGS = -DKRANC_VECTORS # -DCARPET_OPTIMISE -DNDEBUG
FPP_OPTIMISE_FLAGS = # -DCARPET_OPTIMISE -DNDEBUG
C_OPTIMISE_FLAGS = -O3
CXX_OPTIMISE_FLAGS = -O3
F77_OPTIMISE_FLAGS = -O3
F90_OPTIMISE_FLAGS = -O3
## Warning flags
CPP_WARN_FLAGS = -Wall
FPP_WARN_FLAGS = -Wall
C_WARN_FLAGS = -Wall
CXX_WARN_FLAGS = -Wall
F77_WARN_FLAGS = -Wall
F90_WARN_FLAGS = -Wall
## Debug flags
CPP_DEBUG_FLAGS = -DCARPET_DEBUG -fsanitize=undefined -fsanitize=thread
FPP_DEBUG_FLAGS = -DCARPET_DEBUG -fsanitize=undefined -fsanitize=thread
C_DEBUG_FLAGS = -O0 -fsanitize=undefined -fsanitize=thread
CXX_DEBUG_FLAGS = -O0 -fsanitize=undefined -fsanitize=thread
F77_DEBUG_FLAGS = -O0 -fsanitize=undefined -fsanitize=thread
F90_DEBUG_FLAGS = -O0 -fsanitize=undefined -fsanitize=thread
## Code profiling flags
CPP_PROFILE_FLAGS =
FPP_PROFILE_FLAGS =
C_PROFILE_FLAGS = -pg
CXX_PROFILE_FLAGS = -pg
F77_PROFILE_FLAGS = -pg
F90_PROFILE_FLAGS = -pg
## OpenMP
CPP_OPENMP_FLAGS = -fopenmp
FPP_OPENMP_FLAGS = -fopenmp
C_OPENMP_FLAGS = -fopenmp
CXX_OPENMP_FLAGS = -fopenmp
F77_OPENMP_FLAGS = -fopenmp
F90_OPENMP_FLAGS = -fopenmp
## Libraries location
LIBDIRS =
MPI_DIR = /usr
HDF5_DIR = /usr
GSL_DIR = /usr
BOOST_DIR = /usr
PTHREADS_DIR = NO_BUILD
LIBS = gfortran open-pal z # ?
C_LINE_DIRECTIVES = yes # ?
F_LINE_DIRECTIVES = yes # ?
More information about the Users
mailing list