This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Can't link TclMagick anymore


Danny Smith wrote:
Sorry about breaking thread.  I suppose I should give in and
re-subscribe here.
Dave Bodenstab wrote at
http://cygwin.com/ml/cygwin/2006-08/msg00264.html


Warning: .drectve `-defaultlib:MSVCRT ' unrecognized
Warning: .drectve `-defaultlib:OLDNAMES ' unrecognized

These are harmless


Cannot export ??_C@_03KBFG@Tcl?$AA@: symbol not found
Cannot export ??_C@_0DM@EBFE@This?5interpreter?5does?5not?5suppor@:
symbol not found

My MSVC++ 'demangle fu' is not up to that Those must be from tclstub84.lib (tclStubLib.obj), yes?

By not explicitly telling ld what to export, you are implicitly telling
it to export-all symbols from all your objects and archives, excluding a
few system libs. Tell ld to exclude tclstub84.lib from exports, as well



$ gcc -v -shared -mno-cygwin \ -o libTclMagick.dll \ -L'/cygdrive/c/Program Files/ImageMagick' \ TclMagick.o \ -ltclstub84 \ -lCORE_RL_wand_ -lCORE_RL_magick_ \ -Wl,--exclude-libs,tclstub84.lib

That did it. Thanks much.


Where can I learn about this "export" stuff? I've never, ever had to "export" anything (via ld) when making a .so on unix -- it's all done
(for C) by *not* declaring a symbol as "static". Any suggestion on
a tutorial that explains the how and why when linking dll's on
windows?


Thanks again.


-- 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/


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