This is the mail archive of the
mailing list for the Cygwin project.
Re: mismatched dll
- From: "Larry Hall (Cygwin)" <reply-to-list-only-lh at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Sat, 23 Sep 2006 00:13:58 -0400
- Subject: Re: mismatched dll
- References: <020220062132.11025.43E27A6B000117DD00002B1122007507440A050E040D0C079D0A@comcast.net> <20060922125323.GE4787@brasko.net>
- Reply-to: cygwin at cygwin dot com
Bob Rossi wrote:
On Thu, Feb 02, 2006 at 09:32:27PM +0000, Eric Blake wrote:
By moving the cygwin1.dll in the executable directory, things begin to
work. However, I don't understand how it's assumed that the new
cygwin1.dll acts the same as the one the executable was linked against.
See what I mean?
There's a difference here. Cygwin does not maintain binary
compatibility of its use of its shared memory region between
versions. But it DOES maintain binary compatibility of the API
it exposes. Cygwin releases try very hard to guarantee that
something compiled against an older cygwin1.dll will continue
to run when a newer cygwin1.dll is put in its place. The
underlying details may change (such as the shared memory
region), but the API continues to work. And that is exactly
what shared libraries were invented for.
Well, I just updated Cygwin, and now my nx client doesn't work anymore.
If I rename the cygwin cygwin1.dll and have nx use the cygwin1.dll it
comes with, it works. However, when I have nx use the cygwin1.dll that
cygwin uses, it doesn't work. What should I do now?
I could post the error messages I get here, if that's useful.
I'd say that you're going to have to get at least a bit more specific
before someone can offer any real advice. I've run an NX client on
my machine against cygwin packages 1.5.19 and 1.5.21 with no noticeable
problems. I've run version 1.5.0-106 of the NX client on both of the
above. I've run the current 2.0.0-98 against 1.5.21. But be sure you
remove all duplicate DLLs from the bin directory. I found the following
DLLs were duplicates with my installation:
Really, it would be better to install, via 'setup.exe', all the packages
that contain the 'cyg*.dll's delivered with the NX client and then delete
all of these from the installation. That's more maintainable. But how you
handle it is up to you.
Larry Hall http://www.rfk.com
RFK Partners, Inc. (508) 893-9779 - RFK Office
216 Dalton Rd. (508) 893-9889 - FAX
Holliston, MA 01746
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html