On 28 Okt., 09:31, luisfe <lftab...@yahoo.es> wrote:
> Just a newby question about spkgs. sage already has readline. If I do
>
> ./sage 
> -fhttp://boxen.math.washington.edu/home/kirkby/patches/readline-6.1.spkg
>
> Will it replace the existing readline or will it make a parallel
> installation?

Good question.

*Currently*, doing just "./sage -f ..." will only install the new
readline library and its headers, but *not* rebuild any package that
depends on (i.e. uses) libreadline, so in general - but depending on
the version numbers (see below) - some parts of Sage might still use
the old library.

Also, running "make build" afterwards won't rebuild dependent
packages, but instead report "package xyz is already installed" for
every package that /should/ in principle get rebuilt.

For upgrades of Sage, we've now fixed that in Sage 4.6.rc0, such that
you could now do:

$ cp /path/to/readline-6.1.spkg spkg/standard/ # assuming you're in
SAGE_ROOT
$ export SAGE_UPGRADING=yes
$ make build

which really rebuilds all dependent packages, so all parts of Sage
will use the new library.

(The old spkg is usually kept in spkg/standard/, and not all packages
delete libraries of previous versions, so there might in fact remain
old, unused libraries in local/lib/ if the new ones happen to have
different filenames.)

The above, yet undocumented procedure works just as a "side-effect" or
by-product; we'll most probably make further changes to the build /
package installation process.


In the concrete case, on Linux the (dynamically linked) libraries and
executables using libreadline don't have the full version number (6.0
or 6.1) recorded, but only that they need a libreadline.so.6, so the
new (6.1) version will be used without recompilation of the programs /
libraries using libreadline. (libreadline.so and libreadline.so.6 are
symbolic links to the most recent version, e.g. libreadline.so.6.0 or,
after installation of the readline-6.1 spkg, libreadline.so.6.1. You
can verify that by "ls -l local/lib/libreadline*"; the static library
libreadline.a will always be replaced with the latest one.)


-Leif

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to