GNU SASL FOR WINDOWS -- Instructions for the Windows port of GNU SASL Copyright (C) 2010 Simon Josefsson See the end for copying conditions.
GNU SASL for Windows
This directory contains files that will build ZIP files with Windows binaries of GNU SASL. The following ZIP files are built:
gsasl-1.5.2-x86.zip: Windows x86 32-bit binaries. No external dependencies.
gsasl-1.5.2-x64.zip: Windows x86 64-bit binaries. No external dependencies.
gsasl-1.5.2-x86-kfw322.zip: Windows x86 32-bit binaries. Requires MIT Kerberos for Windows 3.2.2. Supports GSS-API and GS2.
License
The core GNU SASL library is available under the LGPLv2+ license. The command line tool gsasl is available under the GPLv3+ license. This documentation and the build scripts (e.g., Makefile) are licensed under the GPLv3+.
Donate
If you find this work useful to you, please contribute back! Contributions will help me develop and make future releases of GNU SASL.
If you need customized support, please contact me directly, since I’m available as a consultant.
Testing
Download the ZIP file and unpack it, and run the gsasl tool.
For Kerberos testing, configure KfW and then invoke gsasl. The following two screenshots demonstrates this:
For more information see the GNU SASL manual on Kerberos on Windows.
Build Environment
I’m using Debian x86 testing with the MinGW cross-compiler. You will need Wine to run the self tests for "make check".
Building GNU SASL for Windows
$ mkdir mingw-w64 $ wget -q http://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64/experimental/buildsystem/makebuildroot-test.mk $ $EDITOR makebuildroot-test.mk change TARGET_ARCH, GCC_FORTRAN, GCC_OBJC, GCC_BRANCH $ make -f makebuildroot-test.mk
Put mingw-w64/build/root/bin/ in your PATH.
The next step is to build GNU SASL itself.
$ wget http://josefsson.org/gsasl4win/Makefile $ make
This will produce a ZIP file with the binaries.
Using the GnuTLS DLL from your Cygwin or MinGW program
Link with the libgsasl.dll.a file.
$ cat > foo.c #include <gsasl.h> int main (void) { printf ("foo %s\n", gsasl_check_version (NULL)); } ^D $ gcc -o foo foo.c -Isomewhere/include somewhere/libgsasl.dll.a
Then run the program.
$ ./foo foo 1.5.2 $
Using the GNU SASL DLL from your Visual Studio program
The first step is create an import library. Start a MSVS Command Prompt, and go to the GnuTLS installation directory.
C:\gsasl-1.5.2>lib /def:libgsasl-7.def ...
This will create a libgsasl-7.lib that can be used as a import library for Visual Studio projects.
Build a sample program to test it as follows:
C:\gsasl-1.5.2>cl foo.c -Iinclude -Dssize_t=long libgsasl-7.lib ... C:\gsasl-1.5.2>foo foo 1.5.2 C:\gsasl-1.5.2>
These steps are not fully polished yet, but appear to work.
Known problems
None so far!
Support
Ask on help-gsasl@gnu.org for general problems. If you wish to contact me directly, try simon@josefsson.org.