Difference between revisions of "Platform Specific"

m (add categories)
(update for 4.5 RC2)
Line 27: Line 27:
 
== Fedora Core 5 x86_64 ==
 
== Fedora Core 5 x86_64 ==
  
This is an install of zimbra-core-4.5.0_RC1_522.RHEL4_64-20061219094121.x86_64.rpm on FC5 x86_64.
+
This is an install of zcs-4.5.0_RC2_566.RHEL4_64.tgz on FC5 x86_64.
 +
Is there a FC5 x86_64 build in the works? The RHEL4 version seems to work fine.
  
 
You need to have the following installed:
 
You need to have the following installed:
Line 34: Line 35:
 
* ''compat-libstdc++-296''
 
* ''compat-libstdc++-296''
  
Below is the change required to make the installer happy with the prerequisites and to allow all services to start up. I also fixed some indentation. This is only tested on FC5.
+
Below is the change required to make the installer happy with the prerequisites and to allow all services to start up. This is only tested on FC5.
 +
 
 +
The script previously checked for FC5 so that it could use libstdc++.so.6 instead of libstdc++.so.5, but if you were on FC5_64, the check failed to match and you were left with an unresolved depenancie for libstdc++.so.5.
  
 
<pre>
 
<pre>
--- zcs.dist/util/utilfunc.sh  2006-12-19 09:48:18.000000000 -0800
+
--- zcs.dist/util/utilfunc.sh  2007-01-04 22:15:56.000000000 -0800
+++ zcs/util/utilfunc.sh        2007-01-09 09:05:42.000000000 -0800
+
+++ zcs/util/utilfunc.sh        2007-01-09 13:58:16.000000000 -0800
@@ -1198,6 +1198,7 @@
+
@@ -1207,10 +1207,14 @@
                PACKAGEEXT='ccs'
+
      PREREQ_LIBS="/usr/lib/libstdc++.so.5"
                PREREQ_PACKAGES="sudo libidn curl fetchmail gmp libxml2 libstdc++ openssl"
+
    elif [ $PLATFORM = "MANDRIVA2006" ]; then
        else
+
      PREREQ_PACKAGES="sudo libidn11 curl fetchmail libgmp3 libxml2 libstdc++6 openssl"
+              # RPM based distro
 
                PACKAGEINST='rpm -iv'
 
                PACKAGERM='rpm -ev --nodeps --noscripts --allmatches'
 
                PACKAGEQUERY='rpm -q'
 
@@ -1207,14 +1208,24 @@
 
                        PREREQ_LIBS="/usr/lib/libstdc++.so.5"
 
                elif [ $PLATFORM = "MANDRIVA2006" ]; then
 
                        PREREQ_PACKAGES="sudo libidn11 curl fetchmail libgmp3 libxml2 libstdc++6 openssl"
 
 
-    elif [ $PLATFORM = "FC4" -o $PLATFORM = "FC5" -o $PLATFORM = "FC3" ]; then
 
-    elif [ $PLATFORM = "FC4" -o $PLATFORM = "FC5" -o $PLATFORM = "FC3" ]; then
 
-      PREREQ_PACKAGES="sudo libidn curl fetchmail gmp bind-libs vixie-cron"
 
-      PREREQ_PACKAGES="sudo libidn curl fetchmail gmp bind-libs vixie-cron"
 
-      if [ $PLATFORM = "FC5" ]; then
 
-      if [ $PLATFORM = "FC5" ]; then
-                         PREREQ_LIBS="/usr/lib/libstdc++.so.6"
+
-       PREREQ_LIBS="/usr/lib/libstdc++.so.6"
-      else
+
+    elif [ "`echo $PLATFORM | cut -c1-2`" = "FC" ]; then
-                        PREREQ_LIBS="/usr/lib/libstdc++.so.5"
+
+     PREREQ_PACKAGES="sudo libidn curl fetchmail gmp bind-libs vixie-cron compat-db compat-libstdc++-296 openssl097a"
-      fi
+
+     if [ "`echo $PLATFORM | cut -c1-3`" = "FC5" ]; then
-   elif [ $PLATFORM = "RHEL4_64" -o $PLATFORM = "CentOS4_64" ]; then
+
+       if [ "`echo $PLATFORM | cut -d_ -f2`" = "64" ]; then
+              elif [ "`echo $PLATFORM | cut -c1-2`" = "FC" ]; then
+
+         PREREQ_LIBS="/usr/lib64/libstdc++.so.6"
+                       # Fedora Core
+
+       else
+                      PREREQ_PACKAGES="sudo libidn curl fetchmail gmp bind-libs vixie-cron"
+
+         PREREQ_LIBS="/usr/lib/libstdc++.so.6"
+                      if [ "`echo $PLATFORM | cut -c3`" -gt 2 ]; then
+
+       fi
+                              # Fedora Core later than 2
+
      else
+                              PREREQ_PACKAGES="$PREREQ_PACKAGES openssl097a compat-db compat-libstdc++-296"
+
        PREREQ_LIBS="/usr/lib/libstdc++.so.5"
+                               if [ "`echo $PLATFORM | cut -c3`" -eq 5 ]; then
+
      fi
+                                       # Fedora Core 5
 
+                                      if [ "`echo $PLATFORM | cut -d_ -f2`" = "64" ]; then
 
+                                               # Fedora Core 5 x86_64
 
+                                              PREREQ_LIBS="/usr/lib64/libstdc++.so.6"
 
+                                       else
 
+                                               # Fedora Core 5 i386
 
+                                              PREREQ_LIBS="/usr/lib/libstdc++.so.5"
 
+                                       fi
 
+                              fi
 
+                      fi
 
+              elif [ $PLATFORM = "RHEL4_64" -o $PLATFORM = "CentOS4_64" ]; then
 
                        PREREQ_PACKAGES="sudo libidn curl fetchmail gmp compat-libstdc++-296 compat-libstdc++-33"
 
                        PREREQ_LIBS="/usr/lib64/libstdc++.so.5"
 
                else
 
 
</pre>
 
</pre>
 
The goal is to add some package prereqs for Fedora Core later than 2 and to use use libstdc++.so.6 instead of .5 in Fedora Core 5, but the platform string "FC5_64" did not match the check for FC5. I don't know that this is appropriate for FC4 and FC3.
 
  
 
== SuSE ==
 
== SuSE ==

Revision as of 22:15, 9 January 2007


64 Bit OS

ZCS will run on RHEL 4 x86_64, with 32bit compat installed. Some work is required to make the Zimbra perl scripts function though. The perl modules included with Zimbra are 32bit. Change the Zimbra users Perl @INC var and make sure all the needed modules are available in the RHEL 64bit Perl install.

Virtual Machine

Red Hat

The install on RHEL4 x86_64 fails while trying to find libstdc++. To get past this, I changed line 947 of the script "utilfunc.sh" in the util directory. The line looked like:

PREREQ_LIBS="/usr/lib/libstdc++.so.5"

I changed it to:

PREREQ_LIBS="/usr/lib64/libstdc++.so.6"

Also you could fix this with a Symbolic Links eg. "ln -s /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.5"

However, once I got things installed, I'm stuck right now on the initialization at the end of the install. slappasswd is upset because it can't find libssl and libcrypto, which are installed in /lib64 on the x86_64 platform. I'll update this when I get past this hurdle.

The same fix can be used here. eg. "ln -s /usr/lib64/libssl.so.6 /usr/lib/libssl.so.5" You only need to change this command to work on your install

Fedora Core 5 x86_64

This is an install of zcs-4.5.0_RC2_566.RHEL4_64.tgz on FC5 x86_64. Is there a FC5 x86_64 build in the works? The RHEL4 version seems to work fine.

You need to have the following installed:

  • compat-db for zimbra-spell
  • openssl097a for zimbra-ldap
  • compat-libstdc++-296

Below is the change required to make the installer happy with the prerequisites and to allow all services to start up. This is only tested on FC5.

The script previously checked for FC5 so that it could use libstdc++.so.6 instead of libstdc++.so.5, but if you were on FC5_64, the check failed to match and you were left with an unresolved depenancie for libstdc++.so.5.

--- zcs.dist/util/utilfunc.sh   2007-01-04 22:15:56.000000000 -0800
+++ zcs/util/utilfunc.sh        2007-01-09 13:58:16.000000000 -0800
@@ -1207,10 +1207,14 @@
       PREREQ_LIBS="/usr/lib/libstdc++.so.5"
     elif [ $PLATFORM = "MANDRIVA2006" ]; then
       PREREQ_PACKAGES="sudo libidn11 curl fetchmail libgmp3 libxml2 libstdc++6 openssl"
-    elif [ $PLATFORM = "FC4" -o $PLATFORM = "FC5" -o $PLATFORM = "FC3" ]; then
-      PREREQ_PACKAGES="sudo libidn curl fetchmail gmp bind-libs vixie-cron"
-      if [ $PLATFORM = "FC5" ]; then
-        PREREQ_LIBS="/usr/lib/libstdc++.so.6"
+    elif [ "`echo $PLATFORM | cut -c1-2`" = "FC" ]; then
+      PREREQ_PACKAGES="sudo libidn curl fetchmail gmp bind-libs vixie-cron compat-db compat-libstdc++-296 openssl097a"
+      if [ "`echo $PLATFORM | cut -c1-3`" = "FC5" ]; then
+        if [ "`echo $PLATFORM | cut -d_ -f2`" = "64" ]; then
+          PREREQ_LIBS="/usr/lib64/libstdc++.so.6"
+        else
+          PREREQ_LIBS="/usr/lib/libstdc++.so.6"
+        fi
       else
         PREREQ_LIBS="/usr/lib/libstdc++.so.5"
       fi

SuSE

General

If the mta won't start, make sure that the libraries are being found:

 postfix start

If you get errors like:

 /opt/zimbra/postfix-2.2.5/sbin/postsuper: error while loading shared libraries: libldap-2.2.so.7: cannot open shared object file: No such file or directory
 /opt/zimbra/postfix-2.2.5/sbin/postalias: error while loading shared libraries: libldap-2.2.so.7: cannot open shared object file: No such file or directory
 /opt/zimbra/postfix-2.2.5/sbin/postfix: error while loading shared libraries: libldap-2.2.so.7: cannot open shared object file: No such file or directory

Verify that /etc/ld.so.conf contains:

 /opt/zimbra/lib
 /opt/zimbra/sleepycat/lib
 /opt/zimbra/openldap/lib
 /opt/zimbra/cyrus-sasl/lib

then run ldconfig (as root).

SuSE ES9

OpenSuse 10

Debian

Mac OS X

Mac OS X ships with Java (so Zimbra does not include it for Mac releases), but the default version - even if 1.5 is installed - is 1.4.

Check the default: ls -l /usr/bin/java.

Check whether 1.5 is installed here: /System/Library/Frameworks/JavaVM.framework/Versions/.

If not, download it from Apple. Once it's installed, you can specify the preferred order of the versions in the Java Application Settings of the Java Preferences utility found in /Applications/Utilities/Java/J2SE 5.0.

You can also make /usr/bin/java a symlink to /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Commands/java but this may break any apps using 1.4.

You can verify that java 1.5 is available to zimbra like this:

su - zimbra
java -version

PPC

Intel

Jump to: navigation, search