#34 Building from source?

bug
open
nobody
None
5
2014-08-26
2014-04-29
tlhackque
No

I have attempted, but failed to build from source after overcoming some of the obstacles.

The README needs to be updated with at least what I've fixed. Then either it or I need to understand why configure fails and how to fix it.

Environment:
Windows 7, never had MinGW or MSYS installed.
Installed both from http://www.mingw.org/

1) New MinGW/MSys packaging: Install manager selections:
I installed mingw332-base, gcc-g++, msys-base, autotools, wget.
2) pkgconfig is required for autoconf. It's a bit of a pain, as it's not in mingw:
From a MSYS bash shell:
wget http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.26-1_win32.zip
pushd /
unzip ~/pkg-config_0.26-1_win32.zip bin/pkg-config.exe
wget ftp://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.28/glib_2.28.8-1_win32.zip
unzip ~/glib_2.28.8-1_win32.zip bin/libglib-2.0-0.dll
ln -s /mingw/bin/libintl-8.dll /mingw/bin/intl.dll
popd
2) makensis - install from http://nsis.sourceforge.net/; what gets copied to msys/mingw?

3) Installed OpenSSL (Win64) as ndicated from
http://www.slproweb.com/products/Win32OpenSSL.html
But that doesn't provide libcrypto or libssl
It installs libeay32, ssleay32.dll, etc. Same for the 32-bit version.

Does OpenVPN--GUI want the 32 or the 64-bit version? Or does it care?

Where do libcrypto and libssl come from? The makefile seems to expect the traditional Unix names.
Something must need to be copied into the mingw/msys tree.

4) Try to build anyway:
a) Cloned the git repo into .../msys/1.0/home/username/OpenVPN using git extensions.
b) autoreconf -fi (get's an error: 'possibly undefined macro: AC_MSG_ERROR')
Shouldn't happen, needs to be fixed. But a second run doesn't mind.
c) autoreconf -i

5) ./configure
dies
./configure: line 4590: syntax error near unexpected token OPENSSL_CRYPTO,' ./configure: line 4590: OPENSSL_CRYPTO, \'

Possibly the error in (4).
Possibly the fact that libcrypto/libssl aren't installed.

In any case, I'd rather not debug further. Someone must have been here before...

Discussion