-
-
Notifications
You must be signed in to change notification settings - Fork 580
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
Maxima fails to build on OpenSolaris x64, though ECL does. #9099
Comments
This comment has been minimized.
This comment has been minimized.
comment:3
Replying to @mwhansen:
I've tried that - the same result. Googling, I find this error is not specific to ECL or Maxima, but can crop up in all sort of programs. http://developers.sun.com/solaris/articles/about_amd64_abi.html indicates a couple of possible workarounds, but I'm unsure what is the best course of action. I guess building with position independent code might be, as it might hopefully be fairly easy to add -fPIC to the ECL build, though I'll take advice from the ECL developer on that. |
comment:4
I should have added that in order to get ECL to build, I had added the option
Without that option ECL will not build. With the option, ECL builds ok, but Maxima does not. I have tried compiling with position independant code, by adding -fPIC to the CFLAGS, but that did not help. Dave |
comment:5
More data: maxima failed with a 64-bit build in fulvia (Solaris on x86), but seems to have succeeded with a 64-bit build on t2 (Solaris on sparc). The 32-bit build on fulvia succeeded, but some of the output is different than on other platforms, causing some doctest failures:
(This is a somewhat hacked build: R didn't build, so it is missing completely. I don't think that would have anything to do with this failure.) |
comment:6
I'd agree, a lack of R will not affect these results. I computed results to 30 digits of precision with Mathematica
That means the absolute error on the expected value is 4.5688e-16 and the absolute error on the Solaris case is -5.43117e-16. I think it's quite reasonable to attribute the The Dave |
comment:7
Replying to @sagetrac-drkirkby:
I'm now aware that any shared library should be build as position independent code. The Sun linker manual is very clear on this and the GCC manual implies it. I've managed to convince the Pari developers to always add -fPIC on all platforms, despite it gives a small (about 10%) performance decrease in Pari. Quite simply, it is not correct to build shared libraries with objects which are not position independent. However, I'm not sure if this is a shared library or not. |
comment:8
Replying to @sagetrac-drkirkby:
I realise this was on fulvia (Solaris 10 x86), not SPARC. Still, the same issues concern arises why does the second test not print the leading zero? Dave |
Relocation errors seen on 64-bit SPARC (t2.math) when buidling with LD_OPTIONS=-Dreloc,detail |
comment:9
Attachment: SPARC-reloaction-errors.txt This has been fixed by the upgrade to ECL on #10766, so this can be closed as fixed in sage-4.7.alpha1. Dave |
Reviewer: David Kirkby |
Build environment
How gcc 4.4.4 was configured
Since the configuration of gcc is fairly critical on OpenSolaris, here's how it was built.
gcc 4.3.4 was failing to build iconv.
The problem
The ECL library is a 64-bit library:
but obviously something is wrong. Whether it is an Sage, ECL or Maxima issue I don't know.
Component: porting: Solaris
Reviewer: David Kirkby
Issue created by migration from https://trac.sagemath.org/ticket/9099
The text was updated successfully, but these errors were encountered: