Repository navigation
Missing symbol running v10 on s390x #25774
Description
Activity
Versions (7.5)? Or platforms (x86_64)?
I meant versions like 7.5 etc. Trying to narrow down were we should try to reproduce. Understood that this is reported as an s390x only issue.
Yes, same problem on 7.5 as well. We had a similar problem with openJDK-11 which also uses the J9 engine from IBM.
It works on Ubuntu:
NAME="Ubuntu" VERSION="18.04.1 LTS (Bionic Beaver)"This system uses gcc 7.3.0 though.
Node.js 10 requires gcc 4.9.4 or higher: https://github.com/nodejs/node/blob/v10.x/BUILDING.md#supported-toolchains
According to https://access.redhat.com/solutions/19458 the default gcc on RHEL7 is 4.8.x.
x86 has the RHEL Developer toolset and more importantly a centos version that makes things easier on x86 so that's what I expected.
For s390, the community builds/tests on RHEL72 but needs the 4.9.4 compiler due to requirements from V8.
Assuming 7.6 still has 4.8.x as mentioned by @richardlau I'm not surprised that you need to add the 4.9.4 compiler or at least libstdc++ from the 4.9.4 compiler, was just not expecting it to be reported as needing something from libc.
Assuming 7.6 still has 4.8.x as mentioned by @richardlau I'm not surprised that you need to add the compiler or at least libstdc++ from the 4.9.4, was just not expecting it to be reported as needing something from libc.
My mistake with libc. It is libdstdc++ from gcc.
@nealef ah, that makes sense then. You will need to add the updated libstdc++ to your ld_library_path as that is expected behaviour. Unfortunate but we did not want to start statically linking things in a way that is different for s390x than for other platforms so it's one of the requirements for running 10.x on versions that have a default compiler earlier than 4.9.X
But there is no 4.9.x for RHEL on s390x. x86_64 CentOS 7 also only has 4.8.5. From where did your dev systems get the updated libstdc++?
Perhaps from a devtoolset?
I think we're building it from source: nodejs/build#1157
Perhaps from a devtoolset?
Do you have a RHEL7 (x86_64) where it's running? If so, would you
rpm -q -f rpm -q -f /lib64/libstdc++.so.*- addeds390xIssues and PRs related to the s390x architecture.Issues and PRs related to the s390x architecture.
on Jan 29, 2019 Is this closeable now?
I think so. I had been trying with the RH SCLO devtoolset-7 to provide the appropriate library but had a couple of unrelated issues. I am curious as to what is in 4.9.4 that is required?
I think so. I had been trying with the RH SCLO devtoolset-7 to provide the appropriate library but had a couple of unrelated issues. I am curious as to what is in 4.9.4 that is required?
For reference, #13466 is where the version was bumped from 4.8.5 to 4.9.4.
When running on RHEL 7 running the node command results in a message:
/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found.