[freetds] Compiling FreeTDS under Windows (howto & question)
James K. Lowden
jklowden at freetds.org
Mon Mar 2 01:22:38 EST 2009
Eloy Lafuente wrote:
> I've tried to build the PHP extension (dblib.dll) and
> have ended with this error:
> unresolved external symbol _hmac_md5
> To fix that, I've added the hmac_md5.c and hmac_md5.h to the
> libTDS project sources/includes and, after rebuilding
> dblib.lib, PHP dll has been created properly.
I'm a little confused. What is the name of the FreeTDS library in
Windows, the way you're building it? And what is the name of the PHP
hmac_md5 is used for domain logins. It should be included in whatever
FreeTDS builds; you can use dumpbin.exe to check.
> Just guessing if adding hmac_md5.* to the libTDS project (as
> I've done) is the correct way to fix the problem and if that
> should be also in the post patch.
Yes, what you did is roughly right. Reading between the lines, it's
likely hmac_md5.c was added to the source tree after the .dsp file you're
using was created. I don't know how to add it to the patch, though;
Microsoft's project files are proprietary and fragile.
I've worked out a giant makefile.win32 that builds everything under the
control of nmake.exe. That should be more stable across compiler
versions. I'll add it as soon as I'm convinced it works, or if someone
expresses interest, whichever comes first.
More information about the FreeTDS