From: michals Date: 2022-06-12T20:30:18+00:00 Subject: [ruby-core:108861] [Ruby master Bug#18808] Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features Issue #18808 has been updated by michals (Michal Such��nek). Also a problem on SLE 12 Deleting the 'extern' reports the same error on the next line with '__attribute__ ((__visibility__("default"))) extern' which suggests that 'extern' does not go with '__attribute__ ((__visibility__("default")))' ruby: trunk ruby 3.2.0dev (2022-06-12T17:35:26Z master 8158f05e72) [powerpc64le-linux] ./configure --prefix=/opt/ruby --disable-install-doc --with-baseruby=/opt/ruby/bin/ruby gcc (SUSE Linux) 4.8.5 I only built ruby on this platform to diagnose a problem which happens only with an old compiler so I am fine with disabled JIT. The problem is that wrong code is generated with JIT *and* it is not detected by configure that JIT should be disabled. ---------------------------------------- Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features https://bugs.ruby-lang.org/issues/18808#change-97943 * Author: npn (John Davis) * Status: Open * Priority: Normal * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- The system I am trying to compile on is a ppc64el system running RedHat 7 (3.10.0-1160.62.1.el7.ppc64le). I can successfully compile on a x86_64 system running the same version RedHat 7 (3.10.0-1160.62.1.el7.x86_64) When I configure with the following, make completes fine, but if I remove the `--disable-jit-support` it fails with the following error. ./configure --enable-shared --enable-load-relative --disable-install-doc --prefix=$RUBY_PREFIX --exec-prefix=$RUBY_PREFIX/rh_ppc --disable-jit-support building rb_mjit_header.h rb_mjit_header.h updated building .ext/include/powerpc64le-linux/rb_mjit_min_header-3.1.2.h error in final header file: In file included from /tmp/20220525-12786-q2ndz2.c:1:0: /tmp/20220525-12786-vf3xbh.h:16627:1: error: multiple storage classes in declaration specifiers __attribute__ ((__visibility__("default"))) extern ^ compilation terminated due to -Wfatal-errors. make: *** [.ext/include/powerpc64le-linux/rb_mjit_min_header-3.1.2.h] Error 1 -- https://bugs.ruby-lang.org/ Unsubscribe: