
Zimbra 10 FOSS Build Instructions
Prerequisites
System Requirements
- OS: Ubuntu 24.04 LTS (or other supported Linux distributions)
- RAM: Minimum 4GB (8GB+ recommended)
- Disk Space: At least 20GB free space
- CPU: Multi-core processor recommended
Required Software
Install the following dependencies:
sudo apt-get update
sudo apt-get install -y \
software-properties-common \
openjdk-8-jdk \
ant \
ant-optional \
ant-contrib \
ruby \
git \
maven \
build-essential \
debhelper
Java 8 Configuration
Zimbra 10.1.0 requires Java 8. Set it as the default:
# Check available Java versions
sudo update-alternatives --config java
sudo update-alternatives --config javac
# Verify Java version
java -version
javac -version
You should see output like: openjdk version "1.8.0_xxx"
Quick Start
Using the Automated Build Script
The easiest way to build Zimbra is using the provided build script:
cd /home/node0/IdeaProjects/Zimbra10FOSS/zimbra-build
./build-zimbra10.sh
The script will:
- Check Java version and dependencies
- Fix Ubuntu 24.04 platform detection automatically
- Create necessary version stub files
- Run the build process
- Display the location of the final build package
Manual Build Process
If you prefer to build manually:
cd /home/node0/IdeaProjects/Zimbra10FOSS/zimbra-build
# Clean build (first time or after changes)
ENV_CACHE_CLEAR_FLAG=true ./build.pl \
--ant-options -DskipTests=true \
--git-default-tag=10.1.0 \
--build-release-no=10.1.0 \
--build-type=FOSS \
--build-release=LIBERTY \
--build-release-candidate=GA \
--build-thirdparty-server=files.zimbra.com \
--no-interactive
# Resume build (if interrupted)
ENV_RESUME_FLAG=true ./build.pl \
--ant-options -DskipTests=true \
--git-default-tag=10.1.0 \
--build-release-no=10.1.0 \
--build-type=FOSS \
--build-release=LIBERTY \
--build-release-candidate=GA \
--build-thirdparty-server=files.zimbra.com \
--no-interactive
Build Output
After a successful build, you'll find the installer package at:
/home/node0/IdeaProjects/Zimbra10FOSS/BUILDS/UBUNTU24_64-LIBERTY-1010-<timestamp>-FOSS-<buildno>/zcs-10.1.0_GA_<buildno>.UBUNTU24_64.<timestamp>.tgz
The package size is approximately 214 MB.
Installation
To install the built Zimbra package:
# Extract the tarball
cd /path/to/build/output
tar xzf zcs-10.1.0_GA_*.UBUNTU24_64.*.tgz
# Enter the extracted directory
cd zcs-*
# Run the installer (requires root)
sudo ./install.sh
Follow the on-screen prompts to complete the installation.
Build Time
Expected build times:
- First build: 45-60 minutes (depends on hardware and network speed)
- Incremental build: 10-20 minutes
Components Built
The build process compiles 53 components including:
- Core Services: zm-mailbox, zm-common, zm-native
- Web Interface: zm-web-client, zm-admin-console
- Protocols: zm-ajax, zm-admin-ajax
- Storage: zm-timezones, zm-taglib, zm-charset
- Security: zm-clam-scanner-store, zm-openid-consumer-store
- Zimlets: Various admin and user zimlets
- Third-party: Modified versions of libraries (nekohtml, ical4j, antisamy, etc.)
Fixes Applied
The build script automatically applies the following fixes:
1. Ubuntu 24.04 Platform Detection
The original get_plat_tag.sh script doesn't recognize Ubuntu 24.04 (noble). The build script adds support for it.
File: rpmconf/Build/get_plat_tag.sh
2. Version Stub Files
Creates the required version files that some components depend on:
zimbra-package-stub/version/MAJOR(contains: 10)zimbra-package-stub/version/MINOR(contains: 1)zimbra-package-stub/version/MICRO(contains: 0)
Troubleshooting
Build Fails with "Could not determine BUILD_ARCH"
Solution: Run the automated build script which fixes Ubuntu 24.04 detection automatically.
Build Fails with Java Version Error
Solution: Ensure Java 8 is set as default:
sudo update-alternatives --config java
sudo update-alternatives --config javac
Build Fails with "version/MAJOR doesn't exist"
Solution: Run the automated build script which creates these files automatically.
Out of Memory Error
Solution: Increase available RAM or add swap space:
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
Build Interrupted
Solution: Resume the build:
ENV_RESUME_FLAG=true ./build.pl --ant-options -DskipTests=true \
--git-default-tag=10.1.0 --build-release-no=10.1.0 \
--build-type=FOSS --build-release=LIBERTY \
--build-release-candidate=GA \
--build-thirdparty-server=files.zimbra.com \
--no-interactive
Build Logs
Build logs are stored in:
.staging/UBUNTU24_64-LIBERTY-1010-<timestamp>-FOSS-<buildno>/logs/
Clean Build
To start a completely fresh build:
# Remove all build artifacts
rm -rf .staging BUILDS
# Run the build script
./build-zimbra10.sh
Advanced Options
Build with Tests
Remove the -DskipTests=true option to run tests:
./build.pl --git-default-tag=10.1.0 --build-release-no=10.1.0 \
--build-type=FOSS --build-release=LIBERTY \
--build-release-candidate=GA \
--build-thirdparty-server=files.zimbra.com \
--no-interactive
Build Specific Components
To build only specific repositories, use ENV_BUILD_INCLUDE:
ENV_BUILD_INCLUDE="zm-mailbox,zm-web-client" ./build.pl ...
Debug Build
For a debug build, add debug flags:
./build.pl --build-debug-flag --git-default-tag=10.1.0 ...
Version Information
- Zimbra Version: 10.1.0
- Release Name: LIBERTY
- Build Type: FOSS (Free and Open Source Software)
- Platform: Ubuntu 24.04 (UBUNTU24_64)
- Java Version: OpenJDK 8
Support
For issues and questions:
- Official Zimbra Forums: https://forums.zimbra.org/
- Zimbra Wiki: https://wiki.zimbra.com/
- GitHub Issues: https://github.com/Zimbra/
License
Zimbra Collaboration Suite is licensed under the GNU General Public License v2.0. See the LICENSE file in each repository for details.
Last Updated: October 2025 Build Script Version: 1.0