-
-
Notifications
You must be signed in to change notification settings - Fork 701
Description
As noted at #9099, Maxima fails to build properly on OpenSolaris x64. The ticket then went onto discuss specific doctest failures on 32-bit Solaris n x86.
However, the reason Maxima was not working on OpenSolaris is totally unrelated and much wider. It has nothing to do with Maxima, but is almost certainly an issue with ECL.
Hence it seemed wise to open a ticket specific for this.
The problem is that the link-editor thinks the ecl shared library contains text relocations, which is why there was an error like
ld.so.1: ecl: fatal: relocation error: R_AMD64_PC32: file /export/home/drkirkby/sage-4.4.2/local/lib//libecl.so: symbol main: value 0x22800097de04 does not fit
There's a command given on this Sun blog
http://blogs.sun.com/rie/entry/my_relocations_don_t_fit
which will show libraries with this problem.
== OpenSolaris on x64 ==
I built the latest ECL snapshot outside of Sage, and run the suggested command on the ECL library. Note, this a different version of ECL built at a later date.
drkirkby@hawk:/tmp/ecl$ ./configure
drkirkby@hawk:/tmp/ecl$ make
then the all important:
drkirkby@hawk:/tmp/ecl$ elfdump -d ./build/libecl.so | fgrep TEXTREL
[23] TEXTREL 0
[31] FLAGS 0x4 [ TEXTREL ]
which indicates a problem - there should be no output from that.
It's also suggested to compile with some debugging information:
$ export LD_OPTIONS=-Dreloc,detail
$ unset MAKE
$ make
A full log is attached of that.
Upstream: Fixed upstream, in a later stable release.
Component: porting: Solaris
Reviewer: David Kirkby
Issue created by migration from https://trac.sagemath.org/ticket/9840