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
GSL library fails to install on AIX 5.3 #10000
Comments
Attachment: gsl-1.14.log |
This comment has been minimized.
This comment has been minimized.
comment:2
Congratulations to ticket number 10000... ;-) Are all HP-UX / AIX tickets yet "major"? |
comment:3
Replying to @nexttime:
Ok, not all are. |
comment:4
The gsl INSTALL file has this to say:
|
comment:5
Replying to @vbraun:
It shouldn't be impossible to do that conditionally in GSL's |
comment:6
Replying to @vbraun:
Thank you. That is most helpful. Dave |
comment:7
Replying to @nexttime:
True, that is very easy to do. But one has to wonder why it's not taken care of in the GSL source code. It would be easy for the GSL developers to check if I think Sage gets a lot harder to maintain, and a lot easier for bugs to get missed on one platform or another with so many conditional bits of code.
I prefer the Let's say I put code like:
then I've no idea if that is necessary on anything other than AIX 5.3. I might be able to find someone to test it on the next release of AIX which is 6.1. (IBM never released a 5.4 or 6.0, so their version numbering is even stranger than Sage's, which is saying something !!) My 32-bit machine is too old to run AIX 6.1, which only has a 64-bit kernel. AIX 5.3 is still officially supported by IBM and will be for a couple of years. Earlier verisons of AIX are no longer supported by IBM, so it is probably not worth worrying about earlier releases. But one should consider AIX 6.1, and the soon to be released AIX 7.0. Dave |
comment:8
Replying to @sagetrac-drkirkby:
True.
That's because they decided to dynamically link
Because the assumption is that
Not true. Same patched file, just avoids a name clash with
True. ;-) (There are packages I think could and should be made prerequisites, which would avoid some trouble.)
Yes, but in general work-arounds made in Sage should be obsoleted by later upstream releases. (This is of course not always the case, and as seen above, some changes aren't upstream problems.)
The snippet from GSL's |
comment:9
Replying to @nexttime:
But it's more complex than that, since if you include iconv on some Linux distributions it breaks the build of Sage. Otherwise we could just install it everywhere.
Em, there used to be two different patches, but perhaps that has changed. The patches needed on Solaris were a lot less than needed on OS X.
All the more reason for this to be handled by autoconf. Since AIX is the only platform where this problem has been observed, it might be sensible to just make an AIX specific patch. I guess the GSL developers are quite within their rights to refuse to work around compiler bugs. I know the MPFR developers will not work around compiler bugs. I really wish I had a copy of the C standard, so knew exactly what should be defined and where. Dave |
comment:10
Brian Gough agrees this should be handled by autoconf. He sent me an email, in which he said: I agree, if you can make a patch that handles this without breaking anything else I will add it. As I don't use AIX I was not in a position to do that. It's not high on my priority list, but I might look at this. Dave |
Attachment: float.h.gz /usr/include/float.h from an RS/6000 7025 F50 running AIX 5.3 (This is a 32-bit PowerPC server) |
comment:11
Replying to @nexttime:
Yes, I think that is correct. If one uses grep one can see I posted this problem to the gcc-help mailing list http://gcc.gnu.org/ml/gcc-help/2010-10/msg00327.html I was asked by Ian Lance Taylor (who I suspect is one of the GCC developers) to post this as a bug on the gcc bug database. So I have now done that. This is now the following GCC bug: |
Changed upstream from Not yet reported upstream; Will do shortly. to Reported upstream. Developers acknowledge bug. |
Changed keywords from none to gcc-bug |
comment:12
Replying to @sagetrac-drkirkby:
I meant to say Dave |
comment:13
I'm still of the opinion this is a gcc bug, but getting the gcc developers to fix it will be difficult. I's submitted two patches to the GSL team, which I've attached here. These are not in Mercurial format, so for the moment at least I don't intend patching the GSL package in Sage. However, they have been accepted upstream. I got an email today from Brian Gough, a GSL developer saying: Thanks for the patches, I've applied them. So the next version of GSL should not have these issues on AIX. Dave |
Unified diff patch for configure.ac, which upstram developers have commited, so will be in the next GSL relese |
Attachment: configure.ac.patch.gz Unified diff patch for fp-aix.c, which upstram developers have commited, so will be in the next GSL relese |
comment:14
Attachment: fp-aix.c.patch.gz |
Attachment: gsl-fixes-for-AIX.patch.gz Mercurial patch that includes 1) Two patches which are applied by GNU patch 2) Changes to spkg-install to apply the patches. 3) A new 'configure' script. The latter makes this patch large |
This comment has been minimized.
This comment has been minimized.
comment:15
I finally have a complete solution for the GSL problem on AIX, which not only means this now builds, but it pases all the tests too. The log file ends with:
The changes, which are only applied on AIX, consist of:
See http://www.ibm.com/developerworks/forums/thread.jspa?threadID=348558 and http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46072 for information about this GCC bug, which is affecting many pieces of software - not just GSL. Note All changes to spkg-install are inside sections which have
so although these changes would not cause problems on any platform, for extra security they are only applied on AIX. This now needs review. Sorry for the size of the Mercurial patch, but this is because there's a new configure script that's auto-generated. That is quite large. |
comment:16
Replying to @sagetrac-drkirkby:
Oops, there's a syntax error in what I just wrote in the trac, though the update .spkg file is fine. I should have stated all changes to spkg-install are inside sections which have
|
Author: David Kirkby |
Changed author from David Kirkby to none |
This comment has been minimized.
This comment has been minimized.
Reviewer: David Kirkby |
comment:19
This has been fixed upstream in version 1.15 of GSL. The bug will be fixed in Sage when #11357 is merged, which updates the version of GSL in Sage from 1.14 to 1.15. Dave |
Changed upstream from Reported upstream. Developers acknowledge bug. to Fixed upstream, in a later stable release. |
== Hardware and Software ==
== The problem ==
Solution
#11357
Upstream: Fixed upstream, in a later stable release.
CC: @kiwifb
Component: porting: AIX or HP-UX
Keywords: gcc-bug
Reviewer: David Kirkby
Issue created by migration from https://trac.sagemath.org/ticket/10000
The text was updated successfully, but these errors were encountered: