|
|
|
|
|
|
|
1. Using Gwenhywfar
|
|
===================
|
|
|
|
1.1. Needed Components
|
|
----------------------
|
|
|
|
1.1.1. GNU TLS
|
|
|
|
We use the precompiled packages from the wireshark project (gnutls 1.6.0)
|
|
which also contain all needed libraries such as libgcrypt and libgpg-error.
|
|
|
|
|
|
|
|
|
|
2. Compiling Gwenhywfar
|
|
=======================
|
|
|
|
2.1. Needed Components
|
|
----------------------
|
|
|
|
2.1.1. MinGW32
|
|
|
|
Gwenhywfar uses MinGW32 on Windows platforms.
|
|
MinGW32 is a project with the goal to provide a free compiler system and a
|
|
nearly complete shell environment which allows to execute the configure
|
|
script. The resulting DLLs and EXEs only link against Windows libraries, so
|
|
there are no licence issues when releasing binary packages.
|
|
These EXEs and DLLs don't need MinGW32 to be installed on the target system.
|
|
The compiler itself is the very well known GCC.
|
|
|
|
One configure command line that used to work is the following:
|
|
|
|
./configure CPPFLAGS="$REGEX_INCLUDES $GNUTLS_INCLUDES $INTL_INCLUDES" \
|
|
LDFLAGS="$REGEX_LDFLAGS -lregex $GNUTLS_LDFLAGS $INTL_LDFLAGS -lintl -liconv"
|
|
|
|
which just means you have to manually supply the -I/some/dir flags and
|
|
-L/some/dir/lib flags for libregex, libintl, libiconv, and gnutls.
|
|
|
|
|
|
2.1.2. GnuTLS
|
|
|
|
We use the precompiled packages from the wireshark project (gnutls 1.6.0)
|
|
which also contain all needed libraries such as libgcrypt and libgpg-error.
|
|
To compile gwenhywfar you will also need the developer files (ending in
|
|
*.dll.a and *.h).
|
|
|
|
|
|
|
|
|
|
3.2. Cross-compiling on Linux
|
|
-----------------------------
|
|
|
|
3.2.1. Compiling
|
|
|
|
|
|
Gwenhywfar can be cross-compiled. The author uses Debian and its mingw
|
|
package. To compile Gwenhywfar in that environment just use the following
|
|
commands:
|
|
|
|
>$ make -fMakefile.cvs mp-w32
|
|
>$ make
|
|
>$ make install DESTDIR=/tmp/gwen
|
|
|
|
|
|
3.2.2. Preparing Files for Shipping
|
|
|
|
You must then take the DLLs and executables (EXE) from the folder /tmp/gwen
|
|
and copy them into a folder for shipping. When preparing the application
|
|
shipping folder you should have the expected file hierarchy (see above) in
|
|
mind so that the application will find all DLLs and data.
|
|
|
|
|
|
3.2.3. Installing to the Cross-Compiler Environment
|
|
|
|
If you want to compile other projects which depend on Gwenhywfar you will
|
|
have to install some files to the cross-compilers environment. On Debian
|
|
this is /usr/i586-mingw32/. Header files go to /usr/i586-mingw32/include
|
|
and libraries must be installed to /usr/i586-mingw32/lib.
|
|
Please don't install the DLLs, only the *.dll.a files, because those are
|
|
the ones needed to compile depending projects (like AqBanking and
|
|
Libchipcard).
|
|
|
|
|