dmurdoch/rgl

Error in dyn.load(dynlib <- getDynlib(dir)) : ...... rgl.so: undefined symbol: _ZSt28__throw_bad_array_new_lengthv

icejean opened this issue · 3 comments

Hi, dmurdoch,
How do you do?
I'm trying to install rgl on my virtual machine that runs R-4.1.2 on CentOS 7.6 and Xvfb. I'v updated my gcc devtoolset to 11, and while trying to install rgl, it prompts the errors below:

installing to /usr/lib64/R-4.1.2/lib64/R/library/00LOCK-rgl/00new/rgl/libs
** R
** demo
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
libgcc_s.so.1 must be installed for pthread_cancel to work
sh: 行 1:  2266 已放弃               R_TESTS= '/usr/lib64/R-4.1.2/lib64/R/bin/R' --no-save --no-restore --no-echo 2>&1 < '/tmp/RtmptUxAmj/file3f063df2c82'
Error in dyn.load(dynlib <- getDynlib(dir)) : 
  无法载入共享目标对象‘/usr/lib64/R-4.1.2/lib64/R/library/00LOCK-rgl/00new/rgl/libs/rgl.so’::
  /usr/lib64/R-4.1.2/lib64/R/library/00LOCK-rgl/00new/rgl/libs/rgl.so: undefined symbol: _ZSt28__throw_bad_array_new_lengthv
Warning:        Loading rgl's DLL failed. 
Warning: Trying without OpenGL...
Error in dyn.load(dynlib <- getDynlib(dir)) : 
  无法载入共享目标对象‘/usr/lib64/R-4.1.2/lib64/R/library/00LOCK-rgl/00new/rgl/useNULL/rgl.so’::
  /usr/lib64/R-4.1.2/lib64/R/library/00LOCK-rgl/00new/rgl/useNULL/rgl.so: undefined symbol: _ZSt28__throw_bad_array_new_lengthv
Error: package or namespace load failed for ‘rgl’:
 loadNamespace()里算'rgl'时.onLoad失败了,详细内容:
  调用: fun(libname, pkgname)
  错误: Loading failed.
错误: loading failed
停止执行
ERROR: loading failed
* removing ‘/usr/lib64/R-4.1.2/lib64/R/library/rgl’

I search around and find that the problem may be the version of my libstdc++.so is too low, the version of mine is libstdc++.so.6.0.28, and maybe you test rgl on libstdc++.so.6.0.29 and abbove.
difference between libstdc++.so.6.0.28 & 29:

GLIBCXX_3.4.29 _ZSt28__throw_bad_array_new_lengthv

(base) [root@VM-4-12-centos lib]# strings /usr/lib64/libstdc++.so.6.0.28 | grep throw_bad_array
__cxa_throw_bad_array_length
__cxa_throw_bad_array_new_length
__cxa_throw_bad_array_length
__cxa_throw_bad_array_new_length
__cxa_throw_bad_array_length
__cxa_throw_bad_array_new_length
(base) [root@VM-4-12-centos lib]# strings /usr/lib64/libstdc++.so.6.0.28 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_3.4.25
GLIBCXX_3.4.26
GLIBCXX_3.4.27
GLIBCXX_3.4.28
GLIBCXX_DEBUG_MESSAGE_LENGTH

My gcc version:

(base) [root@VM-4-12-centos lib]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-11/root/usr/libexec/gcc/x86_64-redhat-linux/11/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-11/root/usr --mandir=/opt/rh/devtoolset-11/root/usr/share/man --infodir=/opt/rh/devtoolset-11/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-11.2.1-20220127/obj-x86_64-redhat-linux/isl-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.2.1 20220127 (Red Hat 11.2.1-9) (GCC) 

Below is the latest binary devtoolsets available for CentOS 7.6, and I'v installed the highest:

(base) [root@VM-4-12-centos lib]# yum list | grep devtoolset-
devtoolset-11-binutils.x86_64              2.36.1-1.el7.2         @centos-sclo-rh
devtoolset-11-gcc.x86_64                   11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-gcc-c++.x86_64               11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-gcc-gdb-plugin.x86_64        11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-gcc-gfortran.x86_64          11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-gcc-plugin-devel.x86_64      11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-libquadmath-devel.x86_64     11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-libstdc++-devel.x86_64       11.2.1-9.el7           @centos-sclo-rh
devtoolset-11-runtime.x86_64               11.1-2.el7             @centos-sclo-rh
devtoolset-8-binutils.x86_64               2.30-55.el7.2          @centos-sclo-rh
devtoolset-8-gcc.x86_64                    8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-gcc-c++.x86_64                8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-gcc-gdb-plugin.x86_64         8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-gcc-gfortran.x86_64           8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-gcc-plugin-devel.x86_64       8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-libquadmath-devel.x86_64      8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-libstdc++-devel.x86_64        8.3.1-3.2.el7          @centos-sclo-rh
devtoolset-8-runtime.x86_64                8.1-1.el7              @centos-sclo-rh
devtoolset-10.x86_64                       10.1-0.el7             centos-sclo-rh
devtoolset-10-annobin.x86_64               9.23-4.el7.1           centos-sclo-rh
devtoolset-10-annobin-annocheck.x86_64     9.23-4.el7.1           centos-sclo-rh
devtoolset-10-binutils.x86_64              2.35-5.el7.4           centos-sclo-rh
devtoolset-10-binutils-devel.x86_64        2.35-5.el7.4           centos-sclo-rh
devtoolset-10-build.x86_64                 10.1-0.el7             centos-sclo-rh
devtoolset-10-dwz.x86_64                   0.12-1.1.el7           centos-sclo-rh
devtoolset-10-dyninst.x86_64               10.2.1-1.el7           centos-sclo-rh
devtoolset-10-dyninst-devel.x86_64         10.2.1-1.el7           centos-sclo-rh
devtoolset-10-dyninst-doc.x86_64           10.2.1-1.el7           centos-sclo-rh
devtoolset-10-dyninst-static.x86_64        10.2.1-1.el7           centos-sclo-rh
devtoolset-10-dyninst-testsuite.x86_64     10.2.1-1.el7           centos-sclo-rh
devtoolset-10-elfutils.x86_64              0.182-3.el7            centos-sclo-rh
devtoolset-10-elfutils-debuginfod.x86_64   0.182-3.el7            centos-sclo-rh
devtoolset-10-elfutils-debuginfod-client.x86_64
devtoolset-10-elfutils-debuginfod-client-devel.x86_64
devtoolset-10-elfutils-devel.x86_64        0.182-3.el7            centos-sclo-rh
devtoolset-10-elfutils-libelf.x86_64       0.182-3.el7            centos-sclo-rh
devtoolset-10-elfutils-libelf-devel.x86_64 0.182-3.el7            centos-sclo-rh
devtoolset-10-elfutils-libs.x86_64         0.182-3.el7            centos-sclo-rh
devtoolset-10-gcc.x86_64                   10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-gcc-c++.x86_64               10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-gcc-gdb-plugin.x86_64        10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-gcc-gfortran.x86_64          10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-gcc-plugin-devel.x86_64      10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-gdb.x86_64                   9.2-10.el7             centos-sclo-rh
devtoolset-10-gdb-doc.noarch               9.2-10.el7             centos-sclo-rh
devtoolset-10-gdb-gdbserver.x86_64         9.2-10.el7             centos-sclo-rh
devtoolset-10-libasan-devel.x86_64         10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libatomic-devel.x86_64       10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libgccjit.x86_64             10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libgccjit-devel.x86_64       10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libgccjit-docs.x86_64        10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libitm-devel.x86_64          10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-liblsan-devel.x86_64         10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libquadmath-devel.x86_64     10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libstdc++-devel.x86_64       10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libstdc++-docs.x86_64        10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libtsan-devel.x86_64         10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-libubsan-devel.x86_64        10.2.1-11.2.el7        centos-sclo-rh
devtoolset-10-ltrace.x86_64                0.7.91-1.el7           centos-sclo-rh
devtoolset-10-make.x86_64                  1:4.2.1-1.el7          centos-sclo-rh
devtoolset-10-make-devel.x86_64            1:4.2.1-1.el7          centos-sclo-rh
devtoolset-10-memstomp.x86_64              0.1.5-6.el7            centos-sclo-rh
devtoolset-10-oprofile.x86_64              1.4.0-1.el7            centos-sclo-rh
devtoolset-10-oprofile-devel.x86_64        1.4.0-1.el7            centos-sclo-rh
devtoolset-10-oprofile-jit.x86_64          1.4.0-1.el7            centos-sclo-rh
devtoolset-10-perftools.x86_64             10.1-0.el7             centos-sclo-rh
devtoolset-10-runtime.x86_64               10.1-0.el7             centos-sclo-rh
devtoolset-10-strace.x86_64                5.7-3.el7              centos-sclo-rh
devtoolset-10-systemtap.x86_64             4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-client.x86_64      4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-devel.x86_64       4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-initscript.x86_64  4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-runtime.x86_64     4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-runtime-python2.x86_64
devtoolset-10-systemtap-sdt-devel.x86_64   4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-server.x86_64      4.4-6.el7              centos-sclo-rh
devtoolset-10-systemtap-testsuite.x86_64   4.4-6.el7              centos-sclo-rh
devtoolset-10-toolchain.x86_64             10.1-0.el7             centos-sclo-rh
devtoolset-10-valgrind.x86_64              1:3.16.1-5.el7         centos-sclo-rh
devtoolset-10-valgrind-devel.x86_64        1:3.16.1-5.el7         centos-sclo-rh
devtoolset-11.x86_64                       11.1-2.el7             centos-sclo-rh
devtoolset-11-annobin-annocheck.x86_64     10.38-1.el7            centos-sclo-rh
devtoolset-11-annobin-docs.noarch          10.38-1.el7            centos-sclo-rh
devtoolset-11-annobin-plugin-gcc.x86_64    10.38-1.el7            centos-sclo-rh
devtoolset-11-binutils-devel.x86_64        2.36.1-1.el7.2         centos-sclo-rh
devtoolset-11-build.x86_64                 11.1-2.el7             centos-sclo-rh
devtoolset-11-dwz.x86_64                   0.14-2.el7             centos-sclo-rh
devtoolset-11-dyninst.x86_64               11.0.0-1.el7           centos-sclo-rh
devtoolset-11-dyninst-devel.x86_64         11.0.0-1.el7           centos-sclo-rh
devtoolset-11-dyninst-doc.x86_64           11.0.0-1.el7           centos-sclo-rh
devtoolset-11-dyninst-static.x86_64        11.0.0-1.el7           centos-sclo-rh
devtoolset-11-dyninst-testsuite.x86_64     11.0.0-1.el7           centos-sclo-rh
devtoolset-11-elfutils.x86_64              0.185-2.el7            centos-sclo-rh
devtoolset-11-elfutils-debuginfod.x86_64   0.185-2.el7            centos-sclo-rh
devtoolset-11-elfutils-debuginfod-client.x86_64
devtoolset-11-elfutils-debuginfod-client-devel.x86_64
devtoolset-11-elfutils-devel.x86_64        0.185-2.el7            centos-sclo-rh
devtoolset-11-elfutils-libelf.x86_64       0.185-2.el7            centos-sclo-rh
devtoolset-11-elfutils-libelf-devel.x86_64 0.185-2.el7            centos-sclo-rh
devtoolset-11-elfutils-libs.x86_64         0.185-2.el7            centos-sclo-rh
devtoolset-11-gdb.x86_64                   10.2-6.el7             centos-sclo-rh
devtoolset-11-gdb-doc.noarch               10.2-6.el7             centos-sclo-rh
devtoolset-11-gdb-gdbserver.x86_64         10.2-6.el7             centos-sclo-rh
devtoolset-11-libasan-devel.x86_64         11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libatomic-devel.x86_64       11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libgccjit.x86_64             11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libgccjit-devel.x86_64       11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libgccjit-docs.x86_64        11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libitm-devel.x86_64          11.2.1-9.el7           centos-sclo-rh
devtoolset-11-liblsan-devel.x86_64         11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libstdc++-docs.x86_64        11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libtsan-devel.x86_64         11.2.1-9.el7           centos-sclo-rh
devtoolset-11-libubsan-devel.x86_64        11.2.1-9.el7           centos-sclo-rh
devtoolset-11-ltrace.x86_64                0.7.91-1.el7           centos-sclo-rh
devtoolset-11-make.x86_64                  1:4.3-1.el7            centos-sclo-rh
devtoolset-11-make-devel.x86_64            1:4.3-1.el7            centos-sclo-rh
devtoolset-11-memstomp.x86_64              0.1.5-6.el7            centos-sclo-rh
devtoolset-11-oprofile.x86_64              1.4.0-2.el7            centos-sclo-rh
devtoolset-11-oprofile-devel.x86_64        1.4.0-2.el7            centos-sclo-rh
devtoolset-11-oprofile-jit.x86_64          1.4.0-2.el7            centos-sclo-rh
devtoolset-11-perftools.x86_64             11.1-2.el7             centos-sclo-rh
devtoolset-11-strace.x86_64                5.13-3.3.el7           centos-sclo-rh
devtoolset-11-systemtap.x86_64             4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-client.x86_64      4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-devel.x86_64       4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-initscript.x86_64  4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-runtime.x86_64     4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-sdt-devel.x86_64   4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-server.x86_64      4.5-7.el7              centos-sclo-rh
devtoolset-11-systemtap-testsuite.x86_64   4.5-7.el7              centos-sclo-rh
devtoolset-11-toolchain.x86_64             11.1-2.el7             centos-sclo-rh
devtoolset-11-valgrind.x86_64              1:3.17.0-4.el7         centos-sclo-rh
devtoolset-11-valgrind-devel.x86_64        1:3.17.0-4.el7         centos-sclo-rh
devtoolset-7.x86_64                        7.1-4.el7              centos-sclo-rh
devtoolset-7-all.x86_64                    7.0-5.el7              centos-sclo-rh
devtoolset-7-binutils.x86_64               2.28-11.el7            centos-sclo-rh
devtoolset-7-binutils-devel.x86_64         2.28-11.el7            centos-sclo-rh
devtoolset-7-build.x86_64                  7.1-4.el7              centos-sclo-rh
devtoolset-7-dockerfiles.x86_64            7.1-4.el7              centos-sclo-rh
devtoolset-7-dwz.x86_64                    0.12-1.1.el7           centos-sclo-rh
devtoolset-7-dyninst.x86_64                9.3.2-3.el7            centos-sclo-rh
devtoolset-7-dyninst-devel.x86_64          9.3.2-3.el7            centos-sclo-rh
devtoolset-7-dyninst-doc.x86_64            9.3.2-3.el7            centos-sclo-rh
devtoolset-7-dyninst-static.x86_64         9.3.2-3.el7            centos-sclo-rh
devtoolset-7-dyninst-testsuite.x86_64      9.3.2-3.el7            centos-sclo-rh
devtoolset-7-elfutils.x86_64               0.170-5.el7            centos-sclo-rh
devtoolset-7-elfutils-devel.x86_64         0.170-5.el7            centos-sclo-rh
devtoolset-7-elfutils-libelf.x86_64        0.170-5.el7            centos-sclo-rh
devtoolset-7-elfutils-libelf-devel.x86_64  0.170-5.el7            centos-sclo-rh
devtoolset-7-elfutils-libs.x86_64          0.170-5.el7            centos-sclo-rh
devtoolset-7-gcc.x86_64                    7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-gcc-c++.x86_64                7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-gcc-gdb-plugin.x86_64         7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-gcc-gfortran.x86_64           7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-gcc-plugin-devel.x86_64       7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-gdb.x86_64                    8.0.1-36.el7           centos-sclo-rh
devtoolset-7-gdb-doc.noarch                8.0.1-36.el7           centos-sclo-rh
devtoolset-7-gdb-gdbserver.x86_64          8.0.1-36.el7           centos-sclo-rh
devtoolset-7-go.x86_64                     7.0-5.el7              centos-sclo-rh
devtoolset-7-libasan-devel.x86_64          7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libatomic-devel.x86_64        7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libcilkrts-devel.x86_64       7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libgccjit.x86_64              7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libgccjit-devel.x86_64        7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libgccjit-docs.x86_64         7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libitm-devel.x86_64           7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-liblsan-devel.x86_64          7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libmpx-devel.x86_64           7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libquadmath-devel.x86_64      7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libstdc++-devel.x86_64        7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libstdc++-docs.x86_64         7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libtsan-devel.x86_64          7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-libubsan-devel.x86_64         7.3.1-5.16.el7         centos-sclo-rh
devtoolset-7-llvm.x86_64                   7.0-5.el7              centos-sclo-rh
devtoolset-7-ltrace.x86_64                 0.7.91-2.el7           centos-sclo-rh
devtoolset-7-make.x86_64                   1:4.2.1-3.el7          centos-sclo-rh
devtoolset-7-memstomp.x86_64               0.1.5-5.1.el7          centos-sclo-rh
devtoolset-7-oprofile.x86_64               1.2.0-2.el7.1          centos-sclo-rh
devtoolset-7-oprofile-devel.x86_64         1.2.0-2.el7.1          centos-sclo-rh
devtoolset-7-oprofile-jit.x86_64           1.2.0-2.el7.1          centos-sclo-rh
devtoolset-7-perftools.x86_64              7.1-4.el7              centos-sclo-rh
devtoolset-7-runtime.x86_64                7.1-4.el7              centos-sclo-rh
devtoolset-7-rust.x86_64                   7.0-5.el7              centos-sclo-rh
devtoolset-7-strace.x86_64                 4.17-7.el7             centos-sclo-rh
devtoolset-7-systemtap.x86_64              3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-client.x86_64       3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-devel.x86_64        3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-initscript.x86_64   3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-runtime.x86_64      3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-sdt-devel.x86_64    3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-server.x86_64       3.1-4s.el7             centos-sclo-rh
devtoolset-7-systemtap-testsuite.x86_64    3.1-4s.el7             centos-sclo-rh
devtoolset-7-toolchain.x86_64              7.1-4.el7              centos-sclo-rh
devtoolset-7-valgrind.x86_64               1:3.13.0-11.el7        centos-sclo-rh
devtoolset-7-valgrind-devel.x86_64         1:3.13.0-11.el7        centos-sclo-rh
devtoolset-8.x86_64                        8.1-1.el7              centos-sclo-rh
devtoolset-8-binutils-devel.x86_64         2.30-55.el7.2          centos-sclo-rh
devtoolset-8-build.x86_64                  8.1-1.el7              centos-sclo-rh
devtoolset-8-dockerfiles.x86_64            8.0-2.el7              centos-sclo-rh
devtoolset-8-dwz.x86_64                    0.12-1.1.el7           centos-sclo-rh
devtoolset-8-dyninst.x86_64                9.3.2-6.el7            centos-sclo-rh
devtoolset-8-dyninst-devel.x86_64          9.3.2-6.el7            centos-sclo-rh
devtoolset-8-dyninst-doc.x86_64            9.3.2-6.el7            centos-sclo-rh
devtoolset-8-dyninst-static.x86_64         9.3.2-6.el7            centos-sclo-rh
devtoolset-8-dyninst-testsuite.x86_64      9.3.2-6.el7            centos-sclo-rh
devtoolset-8-elfutils.x86_64               0.176-1.el7            centos-sclo-rh
devtoolset-8-elfutils-devel.x86_64         0.176-1.el7            centos-sclo-rh
devtoolset-8-elfutils-libelf.x86_64        0.176-1.el7            centos-sclo-rh
devtoolset-8-elfutils-libelf-devel.x86_64  0.176-1.el7            centos-sclo-rh
devtoolset-8-elfutils-libs.x86_64          0.176-1.el7            centos-sclo-rh
devtoolset-8-gdb.x86_64                    8.2-3.el7              centos-sclo-rh
devtoolset-8-gdb-doc.noarch                8.2-3.el7              centos-sclo-rh
devtoolset-8-gdb-gdbserver.x86_64          8.2-3.el7              centos-sclo-rh
devtoolset-8-libasan-devel.x86_64          8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libatomic-devel.x86_64        8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libgccjit.x86_64              8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libgccjit-devel.x86_64        8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libgccjit-docs.x86_64         8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libitm-devel.x86_64           8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-liblsan-devel.x86_64          8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libstdc++-docs.x86_64         8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libtsan-devel.x86_64          8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-libubsan-devel.x86_64         8.3.1-3.2.el7          centos-sclo-rh
devtoolset-8-ltrace.x86_64                 0.7.91-1.el7           centos-sclo-rh
devtoolset-8-make.x86_64                   1:4.2.1-4.el7          centos-sclo-rh
devtoolset-8-memstomp.x86_64               0.1.5-5.el7            centos-sclo-rh
devtoolset-8-oprofile.x86_64               1.3.0-2.el7            centos-sclo-rh
devtoolset-8-oprofile-devel.x86_64         1.3.0-2.el7            centos-sclo-rh
devtoolset-8-oprofile-jit.x86_64           1.3.0-2.el7            centos-sclo-rh
devtoolset-8-perftools.x86_64              8.1-1.el7              centos-sclo-rh
devtoolset-8-strace.x86_64                 4.24-4.el7             centos-sclo-rh
devtoolset-8-systemtap.x86_64              3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-client.x86_64       3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-devel.x86_64        3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-initscript.x86_64   3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-runtime.x86_64      3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-sdt-devel.x86_64    3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-server.x86_64       3.3-2.el7              centos-sclo-rh
devtoolset-8-systemtap-testsuite.x86_64    3.3-2.el7              centos-sclo-rh
devtoolset-8-toolchain.x86_64              8.1-1.el7              centos-sclo-rh
devtoolset-8-valgrind.x86_64               1:3.14.0-16.el7        centos-sclo-rh
devtoolset-8-valgrind-devel.x86_64         1:3.14.0-16.el7        centos-sclo-rh
devtoolset-9.x86_64                        9.1-0.el7              centos-sclo-rh
devtoolset-9-annobin.x86_64                8.79-2.el7             centos-sclo-rh
devtoolset-9-annobin-annocheck.x86_64      8.79-2.el7             centos-sclo-rh
devtoolset-9-binutils.x86_64               2.32-16.el7            centos-sclo-rh
devtoolset-9-binutils-devel.x86_64         2.32-16.el7            centos-sclo-rh
devtoolset-9-build.x86_64                  9.1-0.el7              centos-sclo-rh
devtoolset-9-dwz.x86_64                    0.12-1.1.el7           centos-sclo-rh
devtoolset-9-dyninst.x86_64                10.1.0-4.el7           centos-sclo-rh
devtoolset-9-dyninst-devel.x86_64          10.1.0-4.el7           centos-sclo-rh
devtoolset-9-dyninst-doc.x86_64            10.1.0-4.el7           centos-sclo-rh
devtoolset-9-dyninst-static.x86_64         10.1.0-4.el7           centos-sclo-rh
devtoolset-9-dyninst-testsuite.x86_64      10.1.0-4.el7           centos-sclo-rh
devtoolset-9-elfutils.x86_64               0.176-6.el7            centos-sclo-rh
devtoolset-9-elfutils-devel.x86_64         0.176-6.el7            centos-sclo-rh
devtoolset-9-elfutils-libelf.x86_64        0.176-6.el7            centos-sclo-rh
devtoolset-9-elfutils-libelf-devel.x86_64  0.176-6.el7            centos-sclo-rh
devtoolset-9-elfutils-libs.x86_64          0.176-6.el7            centos-sclo-rh
devtoolset-9-gcc.x86_64                    9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-gcc-c++.x86_64                9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-gcc-gdb-plugin.x86_64         9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-gcc-gfortran.x86_64           9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-gcc-plugin-devel.x86_64       9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-gdb.x86_64                    8.3-3.el7              centos-sclo-rh
devtoolset-9-gdb-doc.noarch                8.3-3.el7              centos-sclo-rh
devtoolset-9-gdb-gdbserver.x86_64          8.3-3.el7              centos-sclo-rh
devtoolset-9-libasan-devel.x86_64          9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libatomic-devel.x86_64        9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libgccjit.x86_64              9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libgccjit-devel.x86_64        9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libgccjit-docs.x86_64         9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libitm-devel.x86_64           9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-liblsan-devel.x86_64          9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libquadmath-devel.x86_64      9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libstdc++-devel.x86_64        9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libstdc++-docs.x86_64         9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libtsan-devel.x86_64          9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-libubsan-devel.x86_64         9.3.1-2.2.el7          centos-sclo-rh
devtoolset-9-ltrace.x86_64                 0.7.91-2.el7           centos-sclo-rh
devtoolset-9-make.x86_64                   1:4.2.1-2.el7          centos-sclo-rh
devtoolset-9-memstomp.x86_64               0.1.5-5.el7            centos-sclo-rh
devtoolset-9-oprofile.x86_64               1.3.0-4.el7            centos-sclo-rh
devtoolset-9-oprofile-devel.x86_64         1.3.0-4.el7            centos-sclo-rh
devtoolset-9-oprofile-jit.x86_64           1.3.0-4.el7            centos-sclo-rh
devtoolset-9-perftools.x86_64              9.1-0.el7              centos-sclo-rh
devtoolset-9-runtime.x86_64                9.1-0.el7              centos-sclo-rh
devtoolset-9-strace.x86_64                 5.1-7.el7              centos-sclo-rh
devtoolset-9-systemtap.x86_64              4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-client.x86_64       4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-devel.x86_64        4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-initscript.x86_64   4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-runtime.x86_64      4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-sdt-devel.x86_64    4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-server.x86_64       4.1-9.el7              centos-sclo-rh
devtoolset-9-systemtap-testsuite.x86_64    4.1-9.el7              centos-sclo-rh
devtoolset-9-toolchain.x86_64              9.1-0.el7              centos-sclo-rh
devtoolset-9-valgrind.x86_64               1:3.15.0-9.el7         centos-sclo-rh
devtoolset-9-valgrind-devel.x86_64         1:3.15.0-9.el7         centos-sclo-rh

Any idea without compiling gcc on my machine by my own? I haven't coded with C from many years, and there may be some difficulty to do it.
Thanks in advance.

Best
Regards

Jean

I don't have any calls to that function in the code I wrote. From the sound of it, I'd guess it's automatically generated by your compiler. So this sounds like a problem in your tools, having a compiler that's not compatible with the libs on your system. I'd try re-installing the compiler or the libs --- but I don't really know anything about CentOS, so I don't know how difficult that would be.

I just built gcc-11.3.0 from source and get libstdc++.so.6.0.29, it took more than 2 and a half hours:

(base) [root@VM-4-12-centos lib64]# ls -l /usr/local/gcc-11.3.0/lib64/libstdc++.so.6.0.29
-rwxr-xr-x 1 root root 17961216 10月 22 20:42 /usr/local/gcc-11.3.0/lib64/libstdc++.so.6.0.29
(base) [root@VM-4-12-centos lib64]# strings /usr/local/gcc-11.3.0/lib64/libstdc++.so.6.0.29 | grep  throw_bad_array
__cxa_throw_bad_array_length
__cxa_throw_bad_array_new_length
_ZSt28__throw_bad_array_new_lengthv
__cxa_throw_bad_array_length
__cxa_throw_bad_array_new_length
_ZSt28__throw_bad_array_new_lengthv
__throw_bad_array_new_length
__cxa_throw_bad_array_length
_ZSt28__throw_bad_array_new_lengthv
__cxa_throw_bad_array_new_length
(base) [root@VM-4-12-centos lib64]# strings /usr/local/gcc-11.3.0/lib64/libstdc++.so.6.0.29 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_3.4.25
GLIBCXX_3.4.26
GLIBCXX_3.4.27
GLIBCXX_3.4.28
GLIBCXX_3.4.29
GLIBCXX_DEBUG_MESSAGE_LENGTH

And link it to /usr/lib64/libstdc++.so.6

ln -s /usr/local/gcc-11.3.0/lib64/libstdc++.so.6.0.29 libstdc++.so.6

And start up and Xvfb server:

Xvfb :2 -screen 0 1280x960x24 &

Then start up R with setting the display to Xvfb server:

DISPLAY=:2 R

Then install rgl with install.packages("rgl"), it's O.K. now. :)

installing to /usr/lib64/R-4.1.2/lib64/R/library/00LOCK-rgl/00new/rgl/libs
** R
** demo
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (rgl)

The downloaded source packages are in
        ‘/tmp/Rtmp3t3pvO/downloaded_packages’
Updating HTML index of packages in '.Library'
Making 'packages.html' ... done

Great news!