This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


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

Re: shared library, init


In article <00d301c14103$3c921b00$f05a798b@mtg.saic.com> you write:
>When I use the linker flag, -Wl,-init,  the linker complains that my _init()
>conflicts with one in crti.o.  When I give the -init flag the name of a
>function that I supply it is ignored.  Can someone advise me of the correct
>syntax to establish a shared library initialization (& termination)
>function.

In the gcc context, assuming this is C, see attribute constructor and 
destructor in the gcc documentation. For C++, this is even more trivial. 
This assumes you're running gcc on a platform with full support for 
this (which is either provided directly by ld + ELF or by collect2 usually). 

Note that the semantics are a bit hard to guarantee and check: it is often
unknown in which order several initialisation routines will be run (and how 
many times), and it is even harder to be sure that a finalization routine 
will actually be run...


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