www.XuvTools.org
Table of ContentsCompiling XuvTools Sources on Linux or Apple MacPrerequisites
To compile XuvTools on Linux, you have to fulfill several build-dependencies. It is recommended that you use a change-root environment, because the compile-process might be disturbed by other/older/newer libraries that you have installed on your Linux. We provide pages that help you setup the compile environment:
Testing your Build Environment
This step is still in an early stage. While the automatic testing can already help find several issues, it is not able to detect all possible problems.
To test if you should have a working Build environment, you can use the script xuvprepare.sh. The script will inspect your setup and warn about problems and errors. Here is a sample run on Linux: emmenlau(decuman) ~/XuvTools/trunk/xuvtools/scripts> ./xuvprepare.sh --verbose Sources, Directory Layout and EnvironmentDirectory LayoutThe next steps should be getting the sources and installing them in the correct directories. It is highly recommended to stick to the following directory layout, where USER is the username of the active user (call 'whoami' to find your user name). Sources: "/home/${USER}/XuvTools/trunk" Binaries: "/data/${USER}/lmbsoft" If you can't use this directory layout or drive letters, please edit the script “XuvTools/trunk/xuvtools/scripts/env-lmb.sh” to reflect your directory layout. Getting the SourcesYou can now check out the sources from the LMB Freiburg Subversion server. For getting the sources, you need to have an Subversion account, which you can request from admin@xuvtools.org. Please make sure you check out the sources in the Sources directory set above. Subversion Server: svn://tim.informatik.uni-freiburg.de/lmbsoft/trunk User Name: <The user name you have received via email> Password: <The password you have received via email> Starting a CompileTo enter the new build environment, you only have to set the environment variables for your shell by sourcing the environment script: source XuvTools/trunk/xuvtools/scripts/env-lmb.sh Starting the XuvTools CompileFinally, you can now use the “xuvbuild.sh” script to compile the sources. When compiling the sources for the first time, you need to use the parameter “–qmake” to generate the Makefiles. For a first run it also recommended to use the parameter “–genfirst”. Compiling the thirdparty prerequisites is required only the first time (or whenever there are updates). Thirdparty compilation is activated with the “–thirdparty” switch. Here is a sample run for compiling the first time: emmenlau(decuman) ~/XuvTools/trunk> xuvbuild.sh --help usage: xuvbuild.sh [--verbose|-v] - be more verbose (default=0) [--qmake|-q] - reconfigure (run qmake) first (default=no) [--thirdparty|-t] - extract thirdparty libs (default=no) [--nobuild|-nb] - do not build solution (default=build) [--rebuild|-c] - rebuild solution (default=no) [--debug|-d] - build debug configuration (default=no) [--release|-r] - build release configuration (default=yes) [--cleantree] - clean temporary and destination build-dirs-tree (default=no) [--jobs|-jobs] - number of parallel jobs (default=autodetect) emmenlau(decuman) ~/XuvTools/trunk> xuvbuild.sh --verbose --qmake --tools --thirdparty Here is a sample run for compiling all future times: emmenlau(decuman) ~/XuvTools/trunk> xuvbuild.sh --verbose XuvTools ReleasesXuvTools releases are packaged with a simple shell script. The script will package the XuvTools release automatically, and include the Java runtime environment and other dependencies. Packaging a XuvTools ReleaseDepending on the platform, you can use one of currently three packaging scripts: xuvpackage-win.sh, xuvpackage-mac.sh or xuvpackage-lin.sh. Here we demonstrate xuvpackage-lin.sh: emmenlau(decuman) ~/XuvTools/trunk> xuvpackage-lin.sh --verbose --version=<versionnr> This will create a new packaged release in your XuvTools/trunk/releases/ directory. Putting it all together - a new XuvTools ReleaseHere is the full, non-beautified truth on what shell invocations had to be done to create the XuvTools 1.8.0-beta11 download. # compile the new release, on Linux we use a chroot schroot -c lucid64 source /home/emmenlau/XuvTools/trunk/xuvtools/scripts/env-lmb.sh xuvbuild.sh --qmake --verbose --tools --thirdparty --version="1.8.0.11" # package the new release xuvpackage-lin.sh --verbose --version="1.8.0" --beta="11" # upload it for the Download page to catch up rsync --verbose --progress $LMBSOFTSRC/releases/XuvStitch-1.8.0-beta11-* aldebaran:/home/www/org.xuvtools/pages/data/releases/ |
|||
|