From: Lloyd D. <ll...@ga...> - 2001-02-19 22:46:42
|
(read "_imp... continued" first. i write it at end of file in case) some test later it appear to me that dlltool when generating .def file put line of style __objc_class_name_DLLToto @ 1 DATA ; which cause dllwrap to produce output lib with __imp__XXX but that's all. i remove DATA tag. built again, test. all work fine. even dependencies over multiple DLL (at least in my little 2 dll test) what is the meaning of such DATA tag ? i think to write a script to remove them but... why generating them in this case ? ----- _imp... continued ---- > > ok, i understand some interesting thing with your explanation. > but the trouble is that it don't resolve my problems. > > for example when i try "nm *.a | grep printf" in > gcc's lib dir i found. > 00000000 ? ___imp_printf > 00000000 ? __imp__printf > 00000000 T _printf > > but when i build my .dll and .a file and want to link against i have an > error message: > LLToto.o(.text+0x70):LLToto.m: undefined reference to > `__objc_class_name_Object' > > and when i run "nm libobjc.a | grep objc_class_name_Object" > (libobjc.a is my new lib) i get: > 00000000 ? ___imp___objc_class_name_Object > 00000000 ? __imp____objc_class_name_Object > > so it appear to me that my lib lack something like: > (but my dll contain it) > 00000000 T __objc_class_name_Object > > what can i do to have a correct .a file ? > (one who contain a ref to __objc_class_name_Object) |