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