-
-
Notifications
You must be signed in to change notification settings - Fork 10.8k
1.11.1 pip install fails on RHEL 7.2 (IBM Power8) with Python 2.7.12 #7836
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Do you get the same error with If so and it's specific to PPC (looks like it), it would help if you could bisect the issue to find the problematic commit. I can't reproduce this, which makes investigating a bit hard. |
@rgommers looks like the first bad commit is 5006616 checkout of refs/tags/v1.11.0 works fine (specifically merge d51f874) checkout of refs/tags/v1.11.1 fails as before see below for bisect. we have RHEL7.2 set up on both PPC and x86 within our cluster
x86 installed without issue
|
It seems that some of the trig functions are not compiling. What we need is to get the compiler error message. You can try compiling the tarball with |
Note that forcing the blacklist here doesn't lead to any problems for me. What version of glibc do you have? |
Digging through the log on the mailing list, it looks like the actual compiler error is:
and then later the same (?) thing again:
...
|
I think this indicates something going wrong with power8 long doubles. (I guess these are double-doubles, like powerpc?) |
Long doubles, just as I suspected ;) The macros are defined in @bbelgodere could you grep the build directory for |
Or just disable |
grep the build directory for DOUBLE_DOUBLE_DOUBLE request
output of python setup.py build https://gist.github.com/bbelgodere/23db858f8d9df293b8c06da2812afcb3 |
@bbelgodere Hmm, I notice in
Try changing that to
so that LE PPC gets checked as well. If that doesn't work, the easiest thing might be to make the blacklist entries platform dependent. |
The `_real_part_reciprocal` function is coded in two ways, one depending on functions specific to IEEE floating point and the other using generic code that should always work. Because PPC long double is not IEEE the generic version should always be chosen for that architecture, but that is currently only done when the PPC is configured as big endian. This PR makes sure that the generic version is also chosen when the PPC is configured as little endian. Closes numpy#7836.
@charris yes, it compiled successfully with that change (eefc1b5). After install ran numpy.test('full') and had two failures.
|
Thanks for checking. The first fail comes from
I suspect The second error is an annoying artifact of f2py that turns up now and then. I'm really not sure what to do about it. I've been told that |
The `_real_part_reciprocal` function is coded in two ways, one depending on functions specific to IEEE floating point and the other using generic code that should always work. Because PPC long double is not IEEE the generic version should always be chosen for that architecture, but that is currently only done when the PPC is configured as big endian. This PR makes sure that the generic version is also chosen when the PPC is configured as little endian. Closes numpy#7836.
The failing test also suggests that |
Looks like future gnu compilers will use IEEE quad precision, see https://gcc.gnu.org/wiki/Ieee128PowerPC, but that will be long after RHEL 7.2. |
While attempting to install numpy on a Power8 (ppc) machine Running RHEL 7.2 I'm encountering the following error below. 1.11.0 installs without issue.
ERROR
ENVIRONMENT DETAILS
The text was updated successfully, but these errors were encountered: