This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: where are my symbols?
- From: "Gerrit P. Haase" <gp at familiehaase dot de>
- To: Danny Smith <dannysmith at users dot sourceforge dot net>
- Cc: Cygwin <cygwin at cygwin dot com>
- Date: Sun, 3 Oct 2004 23:51:59 +0200
- Subject: Re: where are my symbols?
- Organization: Esse keine toten Tiere
- References: <000e01c4a986$799fbcc0$174861cb@DANNY>
- Reply-to: "Gerrit @ cygwin" <cygwin at cygwin dot com>
Danny wrote:
> Gerrit wrote:
>> Hello,
>>
>> I see the following:
>>
>> I link four objects togehter in a DLL:
>> gcc -shared -o .libs/cyggconfbackend-oldxml.dll \
>> -Wl,--out-implib,.libs/libgconfbackend-oldxml.dll.a \
>> .libs/xml-cache.o .libs/xml-dir.o .libs/xml-entry.o \
>> .libs/xml-backend.o ${LIBS}
>>
>> Now I get this in the import library:
>> $ nm .libs/libgconfbackend-oldxml.dll.a | grep ' T '
>> 00000000 T _gconf_backend_get_vtable
>> 00000000 T _g_module_check_init
>>
> < snip >
>>
>> It seems that only the symbols from the fourth object have arrived in
>> the library. What is going on here and how can I track this down?
>>
> Are the two symbols in fourth object marked as dllexport. This will
> override
> --export-all, so you may need to add that switch explicitly.
Yep, correct:
G_MODULE_EXPORT const gchar*
g_module_check_init (GModule *module)
{
gconf_log(GCL_DEBUG, _("Initializing XML backend module"));
LIBXML_TEST_VERSION;
xmlKeepBlanksDefault(1);
return NULL;
}
G_MODULE_EXPORT GConfBackendVTable*
gconf_backend_get_vtable(void)
{
return &xml_vtable;
}
Thank you,
Gerrit
--
=^..^=
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/