Mercurial > trustbridge
view INSTALL @ 633:6c090638b2b4
Use static buffer for module file name.
According to the msdn examle the return value of getmodulefilename
should be used to indicate success and not the size. And according
to comments on that function on Windows 8.1 it does not return
the needed size. So better be more robust and just use max_path
as a limit.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Mon, 23 Jun 2014 15:29:48 +0200 |
parents | 9cdc14373a5d |
children | ed1887be5170 |
line wrap: on
line source
Installation Instructions ************************* For Debian based GNU / Linux ============================ Tested development platform: Ubuntu 13.10. The following commands build qt5 and polarssl which are dependencies of the Software. For build dependencies please refer to the Qt documentation ( qtbase/src/plugins/platforms/xcb/README ). Polarssl needs cmake and build-essentials. export YOURPREFIX=<Prefix of your choice (default /usr)> export PATH=$YOURPREFIX/bin:$PATH curl https://download.qt-project.org/official_releases/qt/5.3/5.3.0/single/qt-everywhere-opensource-src-5.3.0.tar.xz.mirrorlist | grep SHA-256 e6f47e69a5ce707452dd4bad1fd1919201a71e88be1b06afe1d302a3935daf1f http://qt-mirror.dannhauer.de/official_releases/qt/5.3/5.3.0/single/qt-everywhere-opensource-src-5.3.0.tar.xz sha256sum qt-everywhere-opensource-src-5.3.0.tar.xz tar -xvmlf qt-everywhere-opensource-src-5.3.0.tar.xz cd qt-everywhere-opensource-src-5.3.0/qtbase build dependencies have to to be installed at this point, see ../qtbase/src/plugins/platforms/xcb/README ./configure --prefix=$YOURPREFIX \ -opensource \ -release -nomake tests -nomake examples -confirm-license \ -static -no-cups -no-nis -no-icu -fontconfig \ -no-directfb -no-opengl -no-kms -no-eglfs -no-egl -no-openssl -no-glib nice make -j8 make install cd qttools/src/linguist qmake nice make -j8 make install -k curl -O https://polarssl.org/download/polarssl-1.3.7-gpl.tgz 6beef0281160bf07fefefd6b412dd1ce4c39261cf5300835aef442253f0400e5 polarssl-1.3.7-gpl.tgz tar -xf polarssl-1.3.7-gpl.tgz cd polarssl-1.3.7 mkdir build cd build cmake .. -DCMAKE_C_FLAGS=-fpic -DCMAKE_INSTALL_PREFIX=$YOURPREFIX make && make test && make install To compile the software you can use plain cmake. An out of source build is highly suggested. For build options see CMakeList.txt hg clone https://wald.intevation.org/hg/trustbridge/ cd trustbridge mkdir build-linux cd build-linux cmake .. -DCMAKE_PREFIX_PATH=$YOURPREFIX Hiawatha (for Downloader unit test) =================================== Hiawatha is used in the downloader unit tests to provide a testbench for the ssl connection. To build it you may need libxslt-dev as additional dependency. wget https://www.hiawatha-webserver.org/files/hiawatha-9.5.tar.gz sha256sum hiawatha-9.5.tar.gz c181011db1af187006190fc186689a0707a6f1e7b524c2a4347840e8fdf68b4f hiawatha-9.5.tar.gz tar -xf hiawatha-9.5.tar.gz cp polarssl-1.3.7-gpl.tgz hiawatha-9.5/polarssl/polarssl.tgz cd hiawatha-9.5/polarssl sed -i 's/wget.*//' upgrade ./upgrade 1.3.7 cd .. mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=$YOURPREFIX make && make install For Microsoft Windows ===================== The Windows variant can be cross compiled on Debian based GNU / Linux systems. The minimum requirement is Debian stable. Tested development platform: Ubuntu 13.10. Dependencies on the Host system: git autoconf automake bash bison bzip2 \ cmake flex gettext git g++ intltool \ libffi-dev libtool libltdl-dev libssl-dev \ libxml-parser-perl make openssl patch perl \ pkg-config scons sed unzip wget xz-utils autopoint \ gperf Build the windows binaries: MXEPATH=$YOURPREFIX/win git clone https://github.com/mxe/mxe.git $MXEPATH cd $MXEPATH echo "MXE_TARGETS := i686-w64-mingw32.static" > settings.mk make polarssl make qtbase Workaround Qt CMake Bugs: find $MXEPATH/usr/i686-w64-mingw32.static/qt5/lib/cmake -name \*.cmake | \ xargs sed -i 's/\/\([a-z]*\)\.lib/\/lib\1\.a/g' sed -i 's/^_qt5gui_find_extra_libs.*//' \ $MXEPATH/usr/i686-w64-mingw32.static/qt5/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake Make an NSS build available in the MXE prefix: # TODO -> Document how to build NSS,.. cp -r <magic nss folder> $MXEPATH/usr/i686-w64-mingw32.static/ Compile the software: cd trustbridge mkdir build-windows cd build-windows MXETARGET=$MXEPATH/usr/i686-w64-mingw32.static/ cmake .. \ -DCMAKE_PREFIX_PATH="$MXETARGET/qt5;$MXETARGET;" \ -DNSS_INCLUDEDIR="/nss-3.12.7/include;/nss-3.12.7/public/nss" \ -DNSS_LIBDIR="/nss-3.12.7/lib" \ -DCMAKE_TOOLCHAIN_FILE="$MXETARGET/share/cmake/mxe-conf.cmake" \ -DCMAKE_VERBOSE_MAKEFILE=True