On 26 Okt., 22:51, John Cremona <john.crem...@gmail.com> wrote:
> OK, I understand.  If you had CC'd me into the discussion at #9914 I
> could have helped (not all external spkgs' authors are Sage developers
> too, but some are!).

Ok, I don't remember, perhaps I didn't want to bother you with
that... :)

(I was certainly aware you are also listed as one of the ECLIB spkg
maintainers, but the extension modules were written or changed by a
couple of people.)


> The only functions which directly call libpari are in my base lib
> called libjc.  all the other code calls functions in libjc.  But I
> always thought that I had to link in libpari as well to get workable
> binaries.  Is that wrong?

Only if you build the libraries that *directly* use PARI, or
*statically* linked executables (which are "self-contained").

Georg Weber said on Windows one also has to specify *all* libraries
that a DLL directly *or indirectly* depends on (i.e. the "transitive
closure") when building a DLL (Windows shared library), but this seems
to not be the case for extension modules on Cygwin, as there
apparently are counter-examples in the current module_list.py.
(sage.libs.cremona.mat is one of them IIRC.)

(Also, at least the GNU linker has an option "--as-needed" (for at
least ELF), which causes the linker to only record those libraries
specified on the command line that are actually used, and omits
superfluous ones.)

For Linux, Fedora 13 just recently introduced the requirement to at
all specify directly used (shared) libraries even if some other
library linked against already has it as a dependency, which is of
course much cleaner and more robust. (The same applies to Makefile
rules; there are sometimes less obvious [direct] dependencies only
fulfilled by indirect ones, which potentially causes trouble when the
dependencies of direct or indirect prerequisites change.)


Sorry for further abusing the thread, perhaps we should continue at
#9914 if needed.


-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