GCC compiler version check when compiling Erlang/OTP

Hi!

Does the configure script check the version of the available gcc compiler when Erlang/OTP is compiled?

While compiling Erlang/OTP 27.0.1, 27.3.3 on an Linux OS with gcc-7, gcc crashes like this:

#11 122.0  MAKE opt
#11 122.0 make[4]: Entering directory ‘/app/otp/erts/emulator’
#11 122.0  CXX  obj/x86_64-pc-linux-gnu/opt/jit/asmjit/core/virtmem.o
#11 122.1 asmjit/core/virtmem.cpp:288:3: internal compiler error: Segmentation fault
#11 122.1    inline long major() const noexcept { return ver[0]; }
#11 122.1    ^~~~~~
#11 122.1 Please submit a full bug report,
#11 122.1 with preprocessed source if appropriate.
#11 122.1 See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions.

The build is started using otp_build all -a

Thanks,

Cristian

It fails trying to compile the asmjit C++ code.
Try –disable-jitif you really want to get it running with that old gcc.

3 Likes

The C++ bits in the jit do require a fairly recent gcc – I don’t recall the details but we did have some issues with that a few years ago. GCC-7 is woefully obsolete at this time.

3 Likes