[[TracNav]] EncapPackages | EncapReadme | EncapPlatforms | '''EncapInstall''' | EncapHowto ---- = EncapInstall: bcfg2/encap installation instructions = == Prerequisites == * Read the [wiki:EncapReadme README] * GNU gcc and GNU g++ * If you are using the gcc distributed with Solaris/x86 10, you need to install the gcc bug fix at http://www.openssl.org/~appro/values.c by running "`ksh -f values.c`" as root (or openssl will segfault) * GNU make (make sure "gmake" links to GNU make on non-GNU platforms) * epkg (the encap package manager) * Binaries are at http://mirror.opensysadmin.com/epkg-binaries/ (Note: All other binary versions link against libtar-1.2.11 or earlier. Versions of libtar before 1.2.12 have a nasty bug where 100 character path names are truncated to 99 characters. To see what version of libtar your epkg binary is linked against, use `epkg -V`.) * If built from source, first need all recommended libraries from web page * To ease building from source, read `epkg/README` and use `epkg/Makefile` * On AIX 4.3.3, you will need GNU binutils from: ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/GNUPro/binutils-2.9.aix51.020209-4.aix4.3.ppc.rpm You will need binaries of the GNU tools. For GNU and BSD based operating systems, you should be able to get these via the operating system's package system. For commercial operating systems, these can be obtained from: AIX:: * UCLA's Public Domain Software Library for AIX at http://aixpdslib.seas.ucla.edu/aixpdslib.html (These are trivial to convert into encap packages) * Bull AIX Freeware at http://www.bullfreeware.com/ * IBM AIX Toolbox at ftp://ftp.software.ibm.com/aix/freeSoftware Solaris:: * Freeware for Solaris at http://www.sunfreeware.com/ * Community Software for Solaris at http://www.blastwave.org/packages.php == Advanced Packaging Tool (APT) support == On platforms that use APT, such as Debian and Ubuntu, "bcfg2-python-apt" must be built. Unfortunately the version required is dependent on the version of the distribution. To see if your distribution is supported, do: {{{ cat /etc/issue grep DISTRO src/encap-profiles/Makefile \ | awk -F, '{print $2}' | sort | sed s:\)$::g }}} If any of the lines from `src/encap-profiles/Makefile` match your `/etc/issue`, you're good to go; if not, open a ticket at http://www.bcfg2.org/newticket with the contents of your `/etc/issue` requesting that it be supported, and support should be added within a few days (or of course patches are gratefully accepted). When building "bcfg2-python-apt", there are some additional prerequisites: * `/usr/lib/libapt-pkg*` (Part of the "apt" package on Debian) * `/usr/lib/libapt-inst*` (Part of the "apt-utils" package on Debian) * The "`libapt-pkg-dev`" package So you probably want to do something like: {{{ apt-get install apt apt-utils libapt-pkg-dev }}} == Building and installing everything == Note that the build is disruptive to the currently installed bcfg2 packages (whatever you have installed is uninstalled and then replaced with the newly-built packages), although no configuration files will be replaced unless you ask them to be (via "`REPLACE_CONFIG="yes"; export REPLACE_CONFIG`"). 1. Make sure all of the prerequisites (see above) are installed. 1. The build/install must be done as "`root`". 1. Change to the src directory (`cd src`) 1. Copy your `site-settings.conf` file to `bcfg2-site/`; if you don't have one already, copy over `bcfg2-site/site-settings.conf-example` and change it to suit your site. 1. Run `make` (GNU/Linux platforms) or `gmake` (all other platforms). This will kick off and background the entire build process. Make output will be redirected to `make.log`, and package build output will go to individual log files. If the entire build is successful, you will see: {{{ ### encap build finished... }}} followed by the locations of the various packages at the end of make.log Packages that you can install on other machines will be in the "`DIST`" directory. In most cases you will only need the self-extracting/installing package with the name like "`bcfg2-*.run`"; that will install the bcfg2 client. You will need to install this even on your build machine(s) and server(s), so the setup script will run. You can install the doc packages if you want, although it probably makes more sense to let bcfg2 install them on machines you want to have them on after you get stuff up and running. Cheetah will be built on all platforms (as it is needed as a build-time prerequisite), however for run-time it only needs to be installed on the bcfg2 server machine. == Next step == For more information on the "`bcfg2-*.run`" file and what to do next, see the [wiki:EncapHowto HOWTO]. == Documentation Version == * This is a copy of: $Id$ * Most recent version: http://www.bcfg2.org/browser/trunk/bcfg2/encap/INSTALL