This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [Q] automagic define/undefine with dynamic-link/dynamic-unlink



>In a dynamically linked environment, the registration function
>immediately calls the initialization function.  In a statically linked
>environment, the registration function accumulates all initialization
>functions and call them once Guile has been booted.  The choice
>between the two can be made automatic.  A global flag (initially zero)
>indicates whether Guile has been booted.  If not, then the
>registration procedure accumulates pointers in a table, otherwise it
>calls its argument.  Whenever Guile has been booted, the flag is set
>to one and the accumulated pointers are called. 

In a staticly linked environment, you can't link against many
libraries that have definitions for the same symbol.  You'll only
get the first _init.