From: "Berger, Daniel" Date: 2006-04-19T04:37:39+09:00 Subject: Re: ruby-ldap on Windows (built) > -----Original Message----- > From: list-bounce@example.com > [mailto:list-bounce@example.com] On Behalf Of Chris Scharf > Sent: Tuesday, April 18, 2006 1:16 PM > To: ruby-talk ML > Subject: Re: ruby-ldap on Windows (built) > > > Berger, Daniel wrote: > >> -----Original Message----- > >> From: list-bounce@example.com > >> [mailto:list-bounce@example.com] On Behalf Of Chris Scharf > >> Sent: Tuesday, April 18, 2006 10:28 AM > >> To: ruby-talk ML > >> Subject: ruby-ldap on Windows (built) > >> > >> > >> I have finally managed to build the ruby-ldap library for > the Windows > >> platform (i.e. not a cygwin or ming build, but an mswin32 build). > > > > > > > > Excellent work. > > > > May I ask how you did it? I did build errors from sslconn.c that I > > don't see how you could have gotten around without modifying the > > source. > > > > Thanks, > > > > Dan > > I did have to modify the sslconn.c source slightly, in fact. > There are > three references to rb_ldap_sslconn_bind_func which should in fact be > rb_ldap_sslconn_bind_f, and the rb_ldap_sslconn_bind_f is missing an > argument (the third argument should be VALUE self). > > After that, it was a matter of download Microsoft bloat > (700MB Platform > SDK), and building the make file. > > The biggest problem is that the win directory creates the wldap32.lib > file - however, I discovered that this .lib is a known bad > library, and > so I dropped in the one from the SDK. Without the proper > version, even > when I got it to compile, it would crash during a bind. > Dropping in the > .lib from the SDK alleviated this issue as well as all the build > warnings about mismatched linker offsets. Ah, excellent. I already submitted a bug report about the build errors. Could you please submit a patch on the SF site for Ian? I also think there's got to be a better way to link against wldap32.lib without creating a local copy, especially since the newer SDK's don't inlcude a 'dlltool' command. At least, mine doesn't. I just copied the dang thing manually out of the SDK lib directory. Thanks, Dan