This is the mail archive of the cygwin@cygwin.com 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: tclsh83.exe should be cygtclsh83.exe


Peter A. Castro wrote:

If that is NOT what you are suggestion -- e.g. that only tclsh83 should be renamed -- why? Why is tclsh83 special?

By that same token, why do the tcl libraries have "cyg" in their name?
Eg: libtcl83.a is named libcygtcl83.a.  Why?  It's still tcl.  Why are the
libraries name different for this platform?  I've had to hack some
autoconf generated configure scripts because they wanted 'libtcl83' not
'libcygtcl83'.
I know. In general, import and static libs are "libfoo", but the DLLs are cygfoo. This is to avoid hard-to-diagnose problems related to DLL loading, platform mismatch, and in-memory caching. (similar to .exe conflicts -- but much harder to diagnose, since DLL loading is a black art for most users, while "make sure the .exe you want is in front of your PATH" is fairly easy)

As far as the libraries for tcl, I dunno. That's a decision made by the tcl/tk folks over on the insight list. For the record, I have these in my /usr/lib dir:
/usr/lib/libcygitcl32.a
/usr/lib/libcygtcl83.a
/usr/lib/libtcl8.3.a <<<<<<<----------
/usr/lib/libcygitclstub32.a
/usr/lib/libcygtclstub83.a
/usr/lib/tclConfig.sh

But I haven't yet updated to the version that was released today. Apparently a lot of hard work has gone on in this area recently; take a look at the new packages. If they aren't satisfactory, I'm sure the folks over on the insight list would love some help -- but don't hold your breath on the tcl executable being renamed...

P.S. Now, we *do* name all DLL's with a special 'cyg' prefix, but that is because DLLs are a much more complicated problem than EXEs (memory resident, etc etc)

For DLLs, I can see why they are tagged with 'cyg' (this *is* still
Windows under the hood), but what about static linklibs?
That is controlled by the compiler/linker's lookup path (builtin, plus -L arguments). Thus, no need to worry about conflicts unless you do something silly. And linktime issues are the domain of developers, who are assumed to be somewhat more clueful than your average bear.

--Chuck


--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.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]