Forum

Compilation environment

sfs
15 December 2008, 17:13
Hi Hugo,

Please let me know if it is possible to compile the source code on a Vista platform. If so,
1. Where can I get the source code?
2. What is the compilation environment?

Thank you!
Hugo Leisink
15 December 2008, 18:21
Hiawatha on Windows was compiled via Cygwin [www.cygwin.com]. I don't use Vista, so I can't tell if it works. Since it works oke under Windows XP, my guess is that it will work under Vista.

Hiawatha's source code can be obtained via the download page.
sfs
16 December 2008, 10:39
Hi Hugo,

Thank you for the inputs!

Could you please let me know the details of the compilation process on Windows XP? Please let me know if you have any manual for the same.

Best Regards,
Sfs
Hugo Leisink
17 December 2008, 00:40
download and install Cgywin with all the necessary compiler packages and libraries (openssl, libxslt and libxml2).

use ./configure --disable-ipv6 --enable-xslt
after that, replace the generated config.h with this one:
/* config.h.  Generated from config.h.in by configure.  */
/* config.h.in. Generated from configure.ac by autoheader. */

/* Define to 1 if building on Cygwin */
#define CYGWIN 1

/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1

/* Define to 1 if you want Hiawatha to cache files */
#define HAVE_CACHE 1

/* Define to 1 if you have the <crypt.h> header file. */
#define HAVE_CRYPT_H 1

/* Define to 1 if /dev/urandom exists */
#define HAVE_DEV_URANDOM 1

/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1

/* Define to 1 if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1

/* Define to 1 if you have the <netinet/in.h> header file. */
#define HAVE_NETINET_IN_H 1

/* Define to 1 if you have the <netinet/tcp.h> header file. */
#define HAVE_NETINET_TCP_H 1

/* Define if you have POSIX threads libraries and header files. */
#define HAVE_PTHREAD 1

/* Define to 1 if you want to use URL rewriting */
#define HAVE_TOOLKIT 1

/* Define to 1 if you have the `setenv' function. */
#define HAVE_SETENV 1

/* Define to 1 if you want SSL support */
#define HAVE_SSL 1

/* Define to 1 if you want XSLT support */
#define HAVE_XSLT 1

/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1

/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1

/* Define to 1 if you have the `strcasecmp' function. */
#define HAVE_STRCASECMP 1

/* Define to 1 if you have the <strings.h> header file. */
#define HAVE_STRINGS_H 1

/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1

/* Define to 1 if you have the `strncasecmp' function. */
#define HAVE_STRNCASECMP 1

/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1

/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1

/* Define to 1 if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1

/* Define to 1 if you have the `unsetenv' function. */
#define HAVE_UNSETENV 1

/* Necessary for getsid() */
#define _GNU_SOURCE 1

/* Name of package */
#define PACKAGE "hiawatha"

/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "hugo@leisink.net"

/* Define to the full name of this package. */
#define PACKAGE_NAME "Hiawatha"

/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "hiawatha"

/* Define to the full name and version of this package. */
#define PACKAGE_STRING "Hiawatha 6.10"

/* Version number of package */
#define VERSION "6.10"

/* Define to the version of this package. */
#define PACKAGE_VERSION "6.10"

/* directory for configurationfiles */
#define CONFIG_DIR "/cygdrive/c/Program Files/Hiawatha/config"

/* directory for logfiles */
#define LOG_DIR "/cygdrive/c/Program Files/Hiawatha/log"

/* directory for file uploading */
#define UPLOAD_DIR "/cygdrive/c/Program Files/Hiawatha/log"

/* directory for the pidfile */
#define PIDFILE_DIR "/cygdrive/c/Program Files/Hiawatha/log"

/* webroot directory */
#define WEBROOT_DIR "/cygdrive/c/wwwroot"

and run make
This topic has been closed.