Kolab2 Server Troubleshooting - Compiling

From Kolab wiki

Jump to: navigation, search


This section applies to problems you might experience when compiling the Kolab server from source packages.

Contents

Distribution specific hints

OpenPKG

obmtool completely fails to build anything

Operating system Distribution Kolab version
Applies to: probably applies to all *NIX systems Applies to: probably all distributions Applies to: Kolab 2.0 and higher
Found on: Linux Found on: Ubuntu Found on: Kolab 2.1_RC1

Problem

The command

sh obmtool kolab

even fails installing the basic openpkg packges. You receive errors like

checking for C compiler default output... configure: error: C compiler cannot create executables

or

/tmp/obmtool.7772.tmp: 859: cannot open /kolab/RPM/PKG/openpkg-2.5.4-2.5.4.*-*-*.sh: No such file


Solution

You do not have a full build system on the distribution you want to install Kolab on. You need a functional gcc compiler.

On Ubuntu for example you would run

sudo aptitude install build-essential

in order to install the necessary tools.

In case you experience this problem on Fedora 6, then there are also specific instructions available.


obmtool complains with "Permission denied"

Operating system Distribution Kolab version
Applies to: probably applies to all *NIX systems Applies to: probably all distributions Applies to: probably Kolab 2.1
Found on: Linux Found on: Ubuntu and CentOS Found on: Kolab 2.1

Problem

The build fails right after the OpenPkg bootstrap when trying to build the first packages. Obviously there is a problem with file permissions. obmtool reports:

error: cannot open /kolab/RPM/PKG/xyz.src.rpm: Permission denied


Solution

Edit the obmtool script and change line 372 to read:

BUILDUSER=root

This might create problems with your build but obmtool should be able to access the source rpm files as a root user (it tried to do the same as kolab user before). Be cautious about incorrect file permissions later.

Perl fails to build: /kolab/bin/perl: bad interpreter: no such file or directory

Operating system Distribution Kolab version
Applies to: probably applies to all *NIX systems Applies to: probably all distributions Applies to: probably Kolab 2.1_*
Found on: Linux Found on: Gentoo Found on: Kolab 2.1_RC1

Problem

Perl may fail to build as a consequence of the gmp build error mentioned below


Solution

See below.


gmp (and consequently clamav) fails to build

Operating system Distribution Kolab version
Applies to: probably applies to all *NIX systems Applies to: probably all distributions Applies to: probably Kolab 2.*
Found on: Linux Found on: Gentoo Found on: Kolab 2.1_RC1, 2.2_beta1

Problem

Running

sh obmtool kolab

fails to correctly build the gmp package.


Solution

This may happen on a 64-bit architecture if you actually build a 32-bit Linux. gmp fails to detect the desired architecture and the build process aborts. If somehow possible, build that package on a 32-bit architecture and copy the binary package over to your server to use it there.

You can also follow these steps to get the gmp package built (for the opa script see opa):

opa /kolab
openpkg rpm -ihv /kolab/RPM/PKG/gmp-4.1.4-2.5.0.src.rpm
cd /kolab/RPM/SRC/gmp

now change the configure command in the %build-section to this (adding host and build options to configure):

./configure --host=i686-pc-linux-gnu  \
            --build=i686-pc-linux-gnu \
            --prefix=%{l_prefix}      \
            --disable-shared          \
            %{l_make} %{l_mflags -O}

then issue for your distro:

openpkg rpmbuild -bb  gmp.spec
openpkg rpm -ihv /kolab/RPM/PKG/gmp-4.1.4-2.5.0.ix86-yourdistro-kolab.rpm
openpkg rpmbuild --rebuild /kolab/RPM/PKG/clamav-0.88.7-20061211.src.rpm
openpkg rpm -ihv /kolab/RPM/PKG/clamav-0.88.7-20061211.ix86-yourdistro-kolab.rpm

Afterwards you can continue with running

./obmtool kolab

If you are installing Kolab-2.2.* you need to run

./install-kolab ./

Postfix fails to build: references to dlsym, dlopen, dlclose, ... not found

Operating system Distribution Kolab version
Applies to: probably applies to all *NIX systems Applies to: CentOS 5 x86_64 Applies to: probably Kolab 2.2_*
Found on: Linux Found on: CentOS 5.1 x86_64 Found on: Kolab 2.2_beta3

Problem

Postfix build fails with errors like : "dlopen.c:(.text+0xac): undefined reference to `dlsym'"


Solution

Install the 32 bit version of the glibc-devel package. Using yum

 yum install glibc-devel.i386

Gentoo

ssmtp or postfix are blocking the installation

Operating system Distribution Kolab version
Applies to: Native Kolab2/Gentoo installation Applies to: Native Kolab2/Gentoo installation Applies to: All Kolab2/Gentoo versions
Found on: Gentoo Linux Found on: Gentoo Found on: All Kolab2/Gentoo versions

Problem

The ssmtp package or postfix are blocking each other during installation.


Solution

Make sure you activated the mailwrapper use flag for both packages. If you did that and you still see the block, re-emerge the blocking package with the mailwrapper use flag. It is normal to see this problem on a fresh Gentoo installation once you run

emerge kolabd

ssmtp will then block the postfix package since you are not allowed to have two mail transport agents (MTAs) in your system if you did not build them with mailwrapper activated.


Kolabd complains about a disabled mod_authn_alias module

Operating system Distribution Kolab version
Applies to: Native Kolab2/Gentoo installation Applies to: Native Kolab2/Gentoo installation Applies to: All Kolab2/Gentoo versions
Found on: Gentoo Linux Found on: Gentoo Found on: All Kolab2/Gentoo versions

Problem

The newer Apache-2.2 makes use of the package mod_auth_ldap obsolete since it supports the directive AuthnProviderAlias that allows to perform a special LDAP query. The mod_authn_alias module is not activated b< default so you need to manually activate it.


Solution

If you emerge the newer apache-2.2.* on Gentoo the mod_authn_alias module will not be activated. In order to build it you will need to add the line

mod_authn_alias shared

in the file /etc/apache2/apache2-builtin-mods. Afterwards reemerge apache by running

emerge apache

Once you re-installed the package the line

LoadModule authn_alias_module modules/mod_authn_alias.so

should be automatically added to your /etc/apache2/httpd.conf file. If you restart Apache now the directive AuthnProviderAlias should now be known.


Failure to compile cyrus-imap-admin

Operating system Distribution Kolab version
Applies to: Native Kolab2/Gentoo installation Applies to: Native Kolab2/Gentoo installation Applies to: All Kolab2/Gentoo versions
Found on: Gentoo Linux Found on: Gentoo Found on: All Kolab2/Gentoo versions

Problem

The cyrus-imap-admin package might fail to install on an amd64 system.


Solution

If the package cyrus-imap-admin fails to compile, you could possibly fix it with this hint.


Emerge problems with mailman

Operating system Distribution Kolab version
Applies to: Native Kolab2/Gentoo installation Applies to: Native Kolab2/Gentoo installation Applies to: All Kolab2/Gentoo versions
Found on: Gentoo Linux Found on: Gentoo Found on: All Kolab2/Gentoo versions

Problem

Installing mailman together with Kolab on a Kolab2/Gentoo system is still experimental and might cause problems.


Solution

If you have emerge problems regarding mailman, install kolab with USE=-mailman and then reemerge it with USE=mailman.

My problem persists

None of the above hints did help you to solve your problem?

Please check your options for getting support and reporting errors.

Back

Back to the troubleshooting index

Personal tools