#6443: [with patch, needs review] A GNUism in zn_poly-0.9.p0 causes linking
problems wiith Sun's linker
----------------------+-----------------------------------------------------
Reporter: drkirkby | Owner: drkirkby
Type: defect | Status: assigned
Priority: major | Milestone: sage-4.1
Component: solaris | Keywords: GNUism linker flags soname
Reviewer: | Author:
Merged: |
----------------------+-----------------------------------------------------
Comment(by was):
{{{
William Stein wrote:
> Can you post instructions there that explain to me (at least) how to use
> the Sun linker on t2.math to test your spkg? It's difficult to review
your
> spkg if I don't know what to do to test it.
>
> Whenever I post track tickets that involve the build system and spkg's,
I
> always write, to test this do:
> 1.
> 2.
> 3.
>
> so it is easy on reviewers.
>
> -- William
I have not given details before, since I am still not 100% happy with
the installation of the compiler. But
source /usr/local/gcc-4.4.0-sun-linker/gcc440sun
will probably work for you. Stick that at the end of your .profile and
.bashrc
But it requires the setting of LD_LIBRARY_PATH (which that script does),
which is generally a bad thing to do, except as a last resort. It should
not be necessary to build or run a compiler with LD_LIBRARY_PATH set.
See the following links for why it is bad.
http://xahlee.org/UnixResource_dir/_/ldpath.html
http://www.sunmanagers.org/pipermail/summaries/2002-May/001694.html
I seem to be pulling my hair out trying to get gcc to build *properly*,
without hacks to get it to run well.
The gcc developers take the attitude you stick everything in /usr/local
and consider that a 'standard'. That's fine if you only want one version
of gcc, but not so clever if you want to have multiple versions, and
keep them all separate, with the ability to upgrade one program without
it having implications on lots of others.
I've stuck a few libraries in /usr/local/lib. It would be nice to be
able to try updates of those, test them somewhere else and test, but
it's a bit difficult with gcc's insistance of looking in /usr/local/lib.
I have thought of taking a sed script to the gcc-4.4.0 tar fail, so
avoid some of its internal paths which can't be changed!!
Anyway, that aside,
source /usr/local/gcc-4.4.0-sun-linker/gcc440sun
should set the following things up.
1) The linker and assembler in the path before the GNU ones (the latest
versions of which reside in /usr/local/bin)
2) make and tar to the GNU ones (I don't like forcing that on people,
but it will have to do here to avoid issues with Sage)
3) C and C++ compiler to those that use the Sun linker in
/usr/local/gcc-4.4.0-sun-linker/bin/
if you type
gcc -v
you will see it uses the Sun linker and assembler.
I've linked gfortran to g77 and f77, so if a program calls f77, it will
get the GNU fortran compiler (using the Sun linker) rather than the Sun
fortran compiler.
Let me know how you get on, but I do consider it a bit of a fudge. (It's
the same fudge Michael, but it must be possible to build gcc without it).
Be warned, trying to link shared libraries created with the GNU linker,
with those created with the Sun linker, might (probably will) cause
problems. In theory it should be ok, but I know lots of people have had
issues with this. Hence I suggest you start a new build if using that
compiler.
Since the disks are so slow, It's worth doing that in /tmp if you don't
mind the risk of loosing the stuff if the machine gets rebooted for any
reason. Otherwise it takes ages to build. Obviously, don't put too much
in /tmp, but it seems the only practical way to build anything on t2 in
a reasonable period of time.
Dave
}}}
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6443#comment:2>
Sage <http://sagemath.org/>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---