#9896: Upgrading from 4.5.3 to 4.6.alpha* can fail (not limited to MacOS X)
------------------------------+---------------------------------------------
Reporter: jhpalmieri | Owner: leif
Type: defect | Status: needs_review
Priority: blocker | Milestone: sage-4.6
Component: build | Keywords: upgrade update dependencies PARI
NewPARI
Author: Leif Leonhardy | Upstream: N/A
Reviewer: | Merged: sage-4.6.rc0
Work_issues: |
------------------------------+---------------------------------------------
Comment(by leif):
Replying to [comment:156 jhpalmieri]:
> The linbox log has messages like this:
{{{
/bin/sh ../../libtool --tag=CXX --mode=link g++ -g -fPIC
-I"/Applications/sage_builds/sage-4.6.rc0-X/local/include"
-I"/Applications/sage_builds/sage-4.6.rc0-X/local/include/linbox"
-L"/Applications/sage_builds/sage-4.6.rc0-X/local/lib"
-I/Applications/sage_builds/sage-4.6.rc0-X/spkg/build/linbox-1.1.6.p3/src
-I/Applications/sage_builds/sage-4.6.rc0-X/spkg/build/linbox-1.1.6.p3/src/linbox
-I/Applications/sage_builds/sage-4.6.rc0-X/local/include
-I/Applications/sage_builds/sage-4.6.rc0-X/local/include
-D__LINBOX_HAVE_CBLAS -o libutil.la timer.lo error.lo commentator.lo
debug.lo /usr/lib/libcblas.dylib
-L/Applications/sage_builds/sage-4.6.rc0-X/local/lib -lgmpxx -lgmp
-L/Applications/sage_builds/sage-4.6.rc0-X/local/lib -lgivaro
libtool: link: warning: library
`/Applications/sage_builds/sage-4.6.rc0-X/local/lib/libgmpxx.la' was
moved.
grep: /Applications/sage_builds/sage-4.5.3/local/lib/libgmp.la: No such
file or directory
sed: /Applications/sage_builds/sage-4.5.3/local/lib/libgmp.la: No such
file or directory
libtool: link: `/Applications/sage_builds/sage-4.5.3/local/lib/libgmp.la'
is not a valid libtool archive
make[4]: *** [libutil.la] Error 1
make[3]: *** [install-recursive] Error 1
make[2]: *** [install-recursive] Error 1
make[1]: *** [install-recursive] Error 1
Error installing linbox
}}}
I think this ''should'' have been fixed by {{{local/bin/sage-location}}}'s
{{{
#!python
def update_library_files(R):
LIB = '%s/local/lib/'%os.path.abspath(SAGE_ROOT)
# The .a files should be re-ranlib'd
os.system('cd "%s"; ranlib *.a 1>/dev/null 2>/dev/null'%LIB)
# The .la files hardcode path info. Fix this.
for F in os.listdir(LIB):
if F[-3:] == ".la":
G = open(LIB + F).read()
i = G.find('libdir=')
j = i+8 + G[i+8:].find("'")
z = G[i+8:j].strip().strip("'")
i = z.rfind('local/')
if i != -1:
z = z[:i]
H = G.replace(z, os.path.abspath(SAGE_ROOT) + '/')
open(LIB + F,'w').write(H)
}}}
which is (also) called from {{{sage -upgrade}}} (i.e. {{{sage-sage}}}) if
the installation has (newly) moved. (I'm not sure how robust that code is,
it's at least less readable.)
Did you perhaps interrupt this in the first run?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9896#comment:160>
Sage <http://www.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.