<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.openoffice.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ardovm</id>
	<title>Apache OpenOffice Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.openoffice.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ardovm"/>
	<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/wiki/Special:Contributions/Ardovm"/>
	<updated>2026-06-03T05:10:08Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/DevGuide/OfficeDev/Frame-Controller-Model_Paradigm_in_OpenOffice.org&amp;diff=260271</id>
		<title>Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in OpenOffice.org</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/DevGuide/OfficeDev/Frame-Controller-Model_Paradigm_in_OpenOffice.org&amp;diff=260271"/>
		<updated>2025-03-22T20:52:55Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Ardovm ha spostato la pagina Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in OpenOffice.org a Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in Apache OpenOffice: Title was changed fom OOo to AOO, links were changed, but this page was not renamed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in Apache OpenOffice]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/DevGuide/OfficeDev/Frame-Controller-Model_Paradigm_in_Apache_OpenOffice&amp;diff=260270</id>
		<title>Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in Apache OpenOffice</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/DevGuide/OfficeDev/Frame-Controller-Model_Paradigm_in_Apache_OpenOffice&amp;diff=260270"/>
		<updated>2025-03-22T20:52:55Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Ardovm ha spostato la pagina Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in OpenOffice.org a Documentation/DevGuide/OfficeDev/Frame-Controller-Model Paradigm in Apache OpenOffice: Title was changed fom OOo to AOO, links were changed, but this page was not renamed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Documentation/DevGuide/OfficeDevTOC&lt;br /&gt;
|OfficeDev2a=block&lt;br /&gt;
|OfficeDevFramework=block&lt;br /&gt;
|ShowPrevNext=block&lt;br /&gt;
|PrevPage=Documentation/DevGuide/OfficeDev/Framework API&lt;br /&gt;
|NextPage=Documentation/DevGuide/OfficeDev/Frames&lt;br /&gt;
}}&lt;br /&gt;
{{Documentation/DevGuideLanguages|Documentation/DevGuide/OfficeDev/{{SUBPAGENAME}}}} &lt;br /&gt;
 {{DISPLAYTITLE:Frame-Controller-Model Paradigm in {{AOo}}}}&lt;br /&gt;
&amp;lt;!--&amp;lt;idltopic&amp;gt;com.sun.star.frame.XModel;com.sun.star.frame.XFrame;com.sun.star.frame.XController&amp;lt;/idltopic&amp;gt;--&amp;gt;&lt;br /&gt;
The well-known Model-View-Controller (MVC) paradigm separates three application areas: document data (&amp;#039;&amp;#039;model&amp;#039;&amp;#039;), presentation (&amp;#039;&amp;#039;view&amp;#039;&amp;#039;) and interaction (&amp;#039;&amp;#039;controller&amp;#039;&amp;#039;). {{AOo}} has a similar abstraction, called the Frame-Controller-Model (FCM) paradigm. The FCM paradigm shares certain aspects with MVC, but it has different purposes; therefore, it is best to approach FCM independently of MVC. The model and controller in MVC and FCM are quite different things.&lt;br /&gt;
&lt;br /&gt;
The FCM paradigm in {{AOo}} separates three application areas: document object (&amp;#039;&amp;#039;model&amp;#039;&amp;#039;), screen interaction with the model (&amp;#039;&amp;#039;controller&amp;#039;&amp;#039;) and controller-window linkage (&amp;#039;&amp;#039;frame&amp;#039;&amp;#039;). &lt;br /&gt;
&lt;br /&gt;
* The model holds the document data and has methods to change these data without using a controller object. Text, drawings, and spreadsheet cells are accessed directly at the model.&lt;br /&gt;
* The controller has knowledge about the current view status of the document and manipulates the screen presentation of the document, but not the document data. It observes changes made to the model, and can be duplicated to have multiple controllers for the same model.&lt;br /&gt;
* The frame contains the controller for a model and &amp;#039;&amp;#039;knows&amp;#039;&amp;#039; the windows that are used with it, but does not have window functionality.&lt;br /&gt;
&lt;br /&gt;
The purpose of FCM is to have three exchangeable parts that are used with an exchangeable window system:&lt;br /&gt;
&lt;br /&gt;
It is possible to write a new controller that presents an existing model differently without changing the model or the frame. A controller depends on the model it presents; therefore, a new controller for a new model can be written.&lt;br /&gt;
&lt;br /&gt;
Developers can introduce new models for new document types without taking care of the frame and underlying window management system. However, since there is no default controller, it is necessary to write a suitable controller also.&lt;br /&gt;
&lt;br /&gt;
By keeping all window-related functionality separate from the frame, it is possible to use one single frame implementation for every possible window in the entire {{AOo}} application. Thus, the presentation of all visible components is customized by exchanging the frame implementation. At runtime you can access a frame and replace the controller, together with the model it controls, by a different controller instance.&lt;br /&gt;
&lt;br /&gt;
{{PDL1}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/Developer&amp;#039;s Guide/Office Development]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=260260</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=260260"/>
		<updated>2024-12-24T16:03:06Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* OpenSUSE Leap */ Not a draft any more, and cherry-picks on AOO41X are not necessary since Nov 2024.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-IPC-Cmd \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
==OpenSUSE Leap==&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
 $ sudo zypper in gcc libexpat-devel libopenssl-devel autoconf gcc-c++ cups-devel pam-devel \&lt;br /&gt;
       java-1_8_0-openjdk-devel rpm-build gperf freetype-devel libX11-devel libXt-devel \&lt;br /&gt;
       fontconfig-devel libXrandr-devel bison flex gconf2-devel gnome-vfs2-devel gtk2-devel \&lt;br /&gt;
       gstreamer-devel gstreamer-plugins-base-devel Mesa-devel git wget glib2-devel \&lt;br /&gt;
       dbus-1-glib-devel perl orbit2-devel gdk-pixbuf-xlib-devel glu-devel ant \&lt;br /&gt;
       libXinerama-devel libnsl-devel perl-Archive-Zip zip&lt;br /&gt;
&lt;br /&gt;
If you plan to build Debian (.deb) archives for distribution:&lt;br /&gt;
 $ sudo zypper in dpkg fakeroot&lt;br /&gt;
&lt;br /&gt;
The AOO41X branch only compiles as-is since November 2024.&lt;br /&gt;
In order to compile the code from an earlier date, two commits must be cherry-picked from trunk:&lt;br /&gt;
 $ git cherry-pick -x 722adfc9d670a35708718ff1651ed0e282febbd7&lt;br /&gt;
 $ git cherry-pick -x b63eebb52dbe154d19c050aa3bfc61207daf1ef4&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOo}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=260259</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=260259"/>
		<updated>2024-12-24T09:49:04Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* OpenSUSE Leap */ update list of required packages&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-IPC-Cmd \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
==OpenSUSE Leap==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
 $ sudo zypper in gcc libexpat-devel libopenssl-devel autoconf gcc-c++ cups-devel pam-devel \&lt;br /&gt;
       java-1_8_0-openjdk-devel rpm-build gperf freetype-devel libX11-devel libXt-devel \&lt;br /&gt;
       fontconfig-devel libXrandr-devel bison flex gconf2-devel gnome-vfs2-devel gtk2-devel \&lt;br /&gt;
       gstreamer-devel gstreamer-plugins-base-devel Mesa-devel git wget glib2-devel \&lt;br /&gt;
       dbus-1-glib-devel perl orbit2-devel gdk-pixbuf-xlib-devel glu-devel ant \&lt;br /&gt;
       libXinerama-devel libnsl-devel perl-Archive-Zip zip&lt;br /&gt;
&lt;br /&gt;
If you plan to build Debian (.deb) archives for distribution:&lt;br /&gt;
 $ sudo zypper in dpkg fakeroot&lt;br /&gt;
&lt;br /&gt;
The AOO41X branch does not compile as-is. Two commits must be cherry-picked from trunk:&lt;br /&gt;
 $ git cherry-pick -x 722adfc9d670a35708718ff1651ed0e282febbd7&lt;br /&gt;
 $ git cherry-pick -x b63eebb52dbe154d19c050aa3bfc61207daf1ef4&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOo}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apach_OpenOffice_binaries_legal_for_commecial_use%3F&amp;diff=260256</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apach OpenOffice binaries legal for commecial use?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apach_OpenOffice_binaries_legal_for_commecial_use%3F&amp;diff=260256"/>
		<updated>2024-10-27T20:24:36Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Ardovm ha spostato la pagina Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apach OpenOffice binaries legal for commecial use? a Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apache OpenOffice binaries legal for commercial use?: Fix typo in page title&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apache OpenOffice binaries legal for commercial use?]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apache_OpenOffice_binaries_legal_for_commercial_use%3F&amp;diff=260255</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apache OpenOffice binaries legal for commercial use?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apache_OpenOffice_binaries_legal_for_commercial_use%3F&amp;diff=260255"/>
		<updated>2024-10-27T20:24:36Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Ardovm ha spostato la pagina Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apach OpenOffice binaries legal for commecial use? a Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apache OpenOffice binaries legal for commercial use?: Fix typo in page title&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Are {{AOo}} binaries legal for commercial use?}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Are {{AOo}} binaries legal for commercial use?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
Yes they can be used in a commercial or business setting with no licensing fees.&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BusinessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apache_OpenOffice_binaries_legal_for_commercial_use%3F&amp;diff=260254</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apache OpenOffice binaries legal for commercial use?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apache_OpenOffice_binaries_legal_for_commercial_use%3F&amp;diff=260254"/>
		<updated>2024-10-27T20:21:52Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fix typos&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Are {{AOo}} binaries legal for commercial use?}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Are {{AOo}} binaries legal for commercial use?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
Yes they can be used in a commercial or business setting with no licensing fees.&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BusinessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense&amp;diff=260252</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense&amp;diff=260252"/>
		<updated>2024-10-27T19:22:02Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Minor edit to regenerate DynamicPageList&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Documentation/FAQ/ProjectLevel]]&lt;br /&gt;
{{Documentation/FAQTOC}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE: {{AOo}}  - Project Business &amp;amp; License Questions}}&lt;br /&gt;
&lt;br /&gt;
Search the FAQs: &amp;lt;googlefaq/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This page has FAQs that address {{AOo}} at the Project Business &amp;amp; License Level. &lt;br /&gt;
&lt;br /&gt;
This list is ordered by popularity. The most popular FAQs are at the top. But also have a look at the bottom to find any new entries.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
category=Documentation/FAQ/ProjectLevel/BusinessLicense&lt;br /&gt;
ordermethod=none&lt;br /&gt;
order=descending&lt;br /&gt;
replaceintitle=/Documentation.*\//,&lt;br /&gt;
secseparators=&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
[https://www.apache.org/licenses/LICENSE-2.0 Apache License Version 2.0]&lt;br /&gt;
[https://www.apache.org/foundation/license-faq.html Apache Foundation Frequent Questions about ALv2]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5 style=&amp;quot;width:100%; border-collapse: collapse; border-color:#AAA; background-color:#EEE;&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Add a new FAQ entry===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
&lt;br /&gt;
bgcolor=#EEE&lt;br /&gt;
&lt;br /&gt;
type=create&lt;br /&gt;
&lt;br /&gt;
default=Documentation/FAQ/ProjectLevel/BusinessLicense/&amp;lt;FAQ_TITLE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
preload=Documentation/FAQ_Template&lt;br /&gt;
&lt;br /&gt;
buttonlabel=Add new FAQ&lt;br /&gt;
&lt;br /&gt;
break=no&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Where_Can_I_Get_More_Information_on_the_Licenses%3F&amp;diff=260251</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Where Can I Get More Information on the Licenses?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Where_Can_I_Get_More_Information_on_the_Licenses%3F&amp;diff=260251"/>
		<updated>2024-10-27T19:20:49Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fix typo in category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Where Can I Get More Information on the License?}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Where can I get more information on the license?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
For more information visit our [http://www.openoffice.org/license.html license page]&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BusinessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Can_I_sell_and_otherwise_distribute_Apache_OpenOffice%3F&amp;diff=260250</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Can I sell and otherwise distribute Apache OpenOffice?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Can_I_sell_and_otherwise_distribute_Apache_OpenOffice%3F&amp;diff=260250"/>
		<updated>2024-10-27T19:20:27Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fix typo in category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Can I sell and otherwise distribute Documentation/AOO?}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Can I sell and otherwise distribute {{AOo}}?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
Yes, as long as you comply with the terms of [http://www.apache.org/licenses/LICENSE-2.0.html Apache License version 2]&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BusinessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=NL/Documentation/FAQ/ProjectLevel/BusinessLicense&amp;diff=260249</id>
		<title>NL/Documentation/FAQ/ProjectLevel/BusinessLicense</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=NL/Documentation/FAQ/ProjectLevel/BusinessLicense&amp;diff=260249"/>
		<updated>2024-10-27T19:19:13Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fix DynamicPageList&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:NL/Documentation/FAQ/ProjectLevel]]&lt;br /&gt;
{{NL/Documentation/FAQTOC}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE: {{AOo}}  - Project vragen over Zakelijk en licentie}}&lt;br /&gt;
&lt;br /&gt;
De FAQ&amp;#039;s doorzoeken: &amp;lt;googlefaq/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Deze lijst is gesorteerd op populariteit. De meest populaire FAQ&amp;#039;s staan bovenaan. Maar kijk ook eens onderaan om nieuwe items te ontdekken.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
&lt;br /&gt;
category=NL/Documentation/FAQ/ProjectLevel/BusinessLicense&lt;br /&gt;
ordermethod=none&lt;br /&gt;
order=descending&lt;br /&gt;
replaceintitle=/NL.*\//,&lt;br /&gt;
secseparators=&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Zie ook ==&lt;br /&gt;
[https://www.apache.org/licenses/LICENSE-2.0 Apache License Version 2.0]&amp;lt;br /&amp;gt;&lt;br /&gt;
[https://www.apache.org/foundation/license-faq.html Apache Foundation Frequent Questions about ALv2]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=1 cellpadding=5 style=&amp;quot;width:100%; border-collapse: collapse; border-color:#AAA; background-color:#EEE;&amp;quot;&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&lt;br /&gt;
===Een nieuw item voor FAQ&amp;#039;s toevoegen===&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
bgcolor=#EEE&lt;br /&gt;
type=create&lt;br /&gt;
default=NL/Documentation/FAQ/ProjectLevel/BusinessLicense/&amp;lt;FAQ_TITLE&amp;gt;&lt;br /&gt;
preload=NL/Documentation/FAQ_Template&lt;br /&gt;
buttonlabel=Nieuwe FAQ toevoegen&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Instructies&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Stel geen vragen&amp;#039;&amp;#039;&amp;#039; hier, maar &amp;#039;&amp;#039;&amp;#039;geef antwoorden&amp;#039;&amp;#039;&amp;#039;. &lt;br /&gt;
* Als u &amp;#039;&amp;#039;&amp;#039;een vraag wilt stellen&amp;#039;&amp;#039;&amp;#039;, ga dan naar het [https://forum.openoffice.org/nl/forum/ Gebruikersforum].&lt;br /&gt;
* Vervang het gedeelte &amp;#039;&amp;#039;&amp;lt;FAQ_TITLE&amp;gt;&amp;#039;&amp;#039; in het invoervak hierboven door de titel die u aan het item voor de FAQ wilt geven en klik op &amp;#039;&amp;#039;&amp;#039;Nieuwe FAQ toevoegen&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apache_OpenOffice_binaries_legal_for_commercial_use%3F&amp;diff=260248</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Are Apache OpenOffice binaries legal for commercial use?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Are_Apache_OpenOffice_binaries_legal_for_commercial_use%3F&amp;diff=260248"/>
		<updated>2024-10-27T19:17:36Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fix typo in category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Are {{AOo}} binaries legal for commecial use?}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Are {{AOo}} binaries legal for commecial use?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
Yes they can be used in a commercial or buisness setting with no licensing fees.&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BusinessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Category:Documentation/FAQ/ProjectLevel/BusinessLicense&amp;diff=260247</id>
		<title>Category:Documentation/FAQ/ProjectLevel/BusinessLicense</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Category:Documentation/FAQ/ProjectLevel/BusinessLicense&amp;diff=260247"/>
		<updated>2024-10-27T19:17:06Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Ardovm ha spostato la pagina Category:Documentation/FAQ/ProjectLevel/BuisnessLicense a Category:Documentation/FAQ/ProjectLevel/BusinessLicense senza lasciare redirect: Fix typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Documentation/FAQ]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Can_I_sell_and_otherwise_distribute_Apache_OpenOffice%3F&amp;diff=260246</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Can I sell and otherwise distribute Apache OpenOffice?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Can_I_sell_and_otherwise_distribute_Apache_OpenOffice%3F&amp;diff=260246"/>
		<updated>2024-10-27T19:15:02Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Restore typo as it involves the whole category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Can I sell and otherwise distribute Documentation/AOO?}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Can I sell and otherwise distribute {{AOo}}?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
Yes, as long as you comply with the terms of [http://www.apache.org/licenses/LICENSE-2.0.html Apache License version 2]&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BuisnessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Can_I_sell_and_otherwise_distribute_Apache_OpenOffice%3F&amp;diff=260245</id>
		<title>Documentation/FAQ/ProjectLevel/BusinessLicense/Can I sell and otherwise distribute Apache OpenOffice?</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/FAQ/ProjectLevel/BusinessLicense/Can_I_sell_and_otherwise_distribute_Apache_OpenOffice%3F&amp;diff=260245"/>
		<updated>2024-10-27T19:12:47Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fix typo in category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Can I sell and otherwise distribute Documentation/AOO?}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=question/&amp;gt;&lt;br /&gt;
Can I sell and otherwise distribute {{AOo}}?&lt;br /&gt;
&amp;lt;section end=question/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=answer/&amp;gt;&lt;br /&gt;
Yes, as long as you comply with the terms of [http://www.apache.org/licenses/LICENSE-2.0.html Apache License version 2]&lt;br /&gt;
&amp;lt;section end=answer/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation/FAQ/ProjectLevel/BusinessLicense]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=260169</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=260169"/>
		<updated>2024-04-26T19:20:14Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* CentOS 7 and Fedora 19 for AOO 4.2.x and later */ add Perl package required by new OpenSSL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-IPC-Cmd \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
==OpenSUSE Leap==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
 $ sudo zypper in gcc libexpat-devel libopenssl-devel autoconf gcc-c++ cups-devel pam-devel \&lt;br /&gt;
       java-1_8_0-openjdk-devel rpm-build gperf freetype-devel libX11-devel libXt-devel \&lt;br /&gt;
       fontconfig-devel libXrandr-devel bison flex gconf2-devel gnome-vfs2-devel gtk2-devel \&lt;br /&gt;
       gstreamer-devel gstreamer-plugins-base-devel Mesa-devel git wget glib2-devel \&lt;br /&gt;
       dbus-1-glib-devel perl orbit2-devel gdk-pixbuf-xlib-devel glu-devel ant \&lt;br /&gt;
       libXinerama-devel libnsl-devel&lt;br /&gt;
&lt;br /&gt;
The AOO41X branch does not compile as-is. Two commits must be cherry-picked from trunk:&lt;br /&gt;
 $ git cherry-pick -x 722adfc9d670a35708718ff1651ed0e282febbd7&lt;br /&gt;
 $ git cherry-pick -x b63eebb52dbe154d19c050aa3bfc61207daf1ef4&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOo}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=258583</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=258583"/>
		<updated>2023-11-29T22:31:35Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* OpenSUSE Leap */ Add build dependency&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
==OpenSUSE Leap==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
 $ sudo zypper in gcc libexpat-devel libopenssl-devel autoconf gcc-c++ cups-devel pam-devel \&lt;br /&gt;
       java-1_8_0-openjdk-devel rpm-build gperf freetype-devel libX11-devel libXt-devel \&lt;br /&gt;
       fontconfig-devel libXrandr-devel bison flex gconf2-devel gnome-vfs2-devel gtk2-devel \&lt;br /&gt;
       gstreamer-devel gstreamer-plugins-base-devel Mesa-devel git wget glib2-devel \&lt;br /&gt;
       dbus-1-glib-devel perl orbit2-devel gdk-pixbuf-xlib-devel glu-devel ant \&lt;br /&gt;
       libXinerama-devel libnsl-devel&lt;br /&gt;
&lt;br /&gt;
The AOO41X branch does not compile as-is. Two commits must be cherry-picked from trunk:&lt;br /&gt;
 $ git cherry-pick -x 722adfc9d670a35708718ff1651ed0e282febbd7&lt;br /&gt;
 $ git cherry-pick -x b63eebb52dbe154d19c050aa3bfc61207daf1ef4&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOo}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=258582</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=258582"/>
		<updated>2023-11-29T22:20:23Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* OpenSUSE Leap */ add build dependency&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
==OpenSUSE Leap==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
 $ sudo zypper in gcc libexpat-devel libopenssl-devel autoconf gcc-c++ cups-devel pam-devel \&lt;br /&gt;
       java-1_8_0-openjdk-devel rpm-build gperf freetype-devel libX11-devel libXt-devel \&lt;br /&gt;
       fontconfig-devel libXrandr-devel bison flex gconf2-devel gnome-vfs2-devel gtk2-devel \&lt;br /&gt;
       gstreamer-devel gstreamer-plugins-base-devel Mesa-devel git wget glib2-devel \&lt;br /&gt;
       dbus-1-glib-devel perl orbit2-devel gdk-pixbuf-xlib-devel glu-devel ant \&lt;br /&gt;
       libXinerama-devel&lt;br /&gt;
&lt;br /&gt;
The AOO41X branch does not compile as-is. Two commits must be cherry-picked from trunk:&lt;br /&gt;
 $ git cherry-pick -x 722adfc9d670a35708718ff1651ed0e282febbd7&lt;br /&gt;
 $ git cherry-pick -x b63eebb52dbe154d19c050aa3bfc61207daf1ef4&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOo}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=258581</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=258581"/>
		<updated>2023-11-29T22:18:34Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Add paragraph about OpenSUSE&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
==OpenSUSE Leap==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
 $ sudo zypper in gcc libexpat-devel libopenssl-devel autoconf gcc-c++ cups-devel pam-devel \&lt;br /&gt;
       java-1_8_0-openjdk-devel rpm-build gperf freetype-devel libX11-devel libXt-devel \&lt;br /&gt;
       fontconfig-devel libXrandr-devel bison flex gconf2-devel gnome-vfs2-devel gtk2-devel \&lt;br /&gt;
       gstreamer-devel gstreamer-plugins-base-devel Mesa-devel git wget glib2-devel \&lt;br /&gt;
       dbus-1-glib-devel perl orbit2-devel gdk-pixbuf-xlib-devel glu-devel ant&lt;br /&gt;
&lt;br /&gt;
The AOO41X branch does not compile as-is. Two commits must be cherry-picked from trunk:&lt;br /&gt;
 $ git cherry-pick -x 722adfc9d670a35708718ff1651ed0e282febbd7&lt;br /&gt;
 $ git cherry-pick -x b63eebb52dbe154d19c050aa3bfc61207daf1ef4&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOo}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Jeanweber&amp;diff=249757</id>
		<title>User:Jeanweber</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Jeanweber&amp;diff=249757"/>
		<updated>2022-06-21T08:14:16Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Remove reference to outdated web site&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[image:jeanweber.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
[mailto:jeanweber@apache.org Jean Hollis Weber] joined the OpenOffice.org community in 2002. From 2003 she was the lead editor at [http://odfauthors.org ODFAuthors] (formerly OOoAuthors), the group that produced the user guides. In January 2009 she became Co-Lead of the OpenOffice.org [http://documentation.openoffice.org Documentation Project].&lt;br /&gt;
&lt;br /&gt;
Jean is a retired technical writer and editor with many years of experience with companies including IBM Australia. She is the author of numerous books, including the award-winning &amp;#039;&amp;#039;Is the Help Helpful? Writing online help that meets your users&amp;#039; needs&amp;#039;&amp;#039; and several books about OpenOffice.org.&lt;br /&gt;
&lt;br /&gt;
Jean&amp;#039;s websites include the [http://jeanweber.com/newsite/ Technical Editors&amp;#039; Eyrie].&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249497</id>
		<title>Documentation/Building Guide AOO/Step by step with a Docker Container</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249497"/>
		<updated>2022-01-15T20:57:07Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Fixed commands&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide with a Docker Container}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Docker Containers.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This page focuses on docker container. The goal is to provide a simple to create Build environment to build the Linux Version of Apache OpenOffice (R).&lt;br /&gt;
&lt;br /&gt;
= Prerequisite to this guide =&lt;br /&gt;
You need to have a normal docker installation on your system and a git instance installed.&lt;br /&gt;
&lt;br /&gt;
= Building your Docker image =&lt;br /&gt;
You need the Dockerfile for building the docker image.&lt;br /&gt;
&lt;br /&gt;
Create a build folder on your host, and put the file into that folder. We assume here that the folder is /workspace/docker&lt;br /&gt;
 $ cd /workspace/docker&lt;br /&gt;
 $ wget https://svn.apache.org/repos/asf/openoffice/devtools/build-scripts/4.2.0/containers/linux/Dockerfile&lt;br /&gt;
 $ docker build -t aoo_centos .&lt;br /&gt;
&lt;br /&gt;
= Building Apache OpenOffice (R) =&lt;br /&gt;
== Getting the Code ==&lt;br /&gt;
 $ mkdir /workspace/AOO&lt;br /&gt;
 $ cd /workspace/AOO&lt;br /&gt;
 $ git clone https://gitbox.apache.org/repos/asf/openoffice.git .&lt;br /&gt;
&lt;br /&gt;
== Starting the image and adding the source code ==&lt;br /&gt;
 $ docker run -ti -v /workspace/AOO:/workspace/AOO aoo_centos&lt;br /&gt;
&lt;br /&gt;
== Configure ==&lt;br /&gt;
See the buildscript at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== bootstrap ==&lt;br /&gt;
&lt;br /&gt;
== build AOO ==&lt;br /&gt;
&lt;br /&gt;
= The dockerfile explained =&lt;br /&gt;
--!&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249496</id>
		<title>Documentation/Building Guide AOO/Step by step with a Docker Container</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249496"/>
		<updated>2022-01-15T20:55:27Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Building your Docker image */ Dockerfile URL from SVN repository&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide with a Docker Container}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Docker Containers.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This page focuses on docker container. The goal is to provide a simple to create Build environment to build the Linux Version of Apache OpenOffice (R).&lt;br /&gt;
&lt;br /&gt;
= Prerequisite to this guide =&lt;br /&gt;
You need to have a normal docker installation on your system and a git instance installed.&lt;br /&gt;
&lt;br /&gt;
= Building your Docker image =&lt;br /&gt;
You need the Dockerfile for building the docker image.&lt;br /&gt;
&lt;br /&gt;
Create a build folder on your host, and put the file into that folder. We assume here that the folder is /workspace/docker&lt;br /&gt;
 $ cd /workspace/docker&lt;br /&gt;
 $ wget https://svn.apache.org/repos/asf/openoffice/devtools/build-scripts/4.2.0/containers/linux/Dockerfile .&lt;br /&gt;
 $ docker build -t aoo_centos&lt;br /&gt;
&lt;br /&gt;
= Building Apache OpenOffice (R) =&lt;br /&gt;
== Getting the Code ==&lt;br /&gt;
 $ mkdir /workspace/AOO&lt;br /&gt;
 $ cd /workspace/AOO&lt;br /&gt;
 $ git clone https://gitbox.apache.org/repos/asf/openoffice.git .&lt;br /&gt;
&lt;br /&gt;
== Starting the image and adding the source code ==&lt;br /&gt;
 $ docker run -ti -v /workspace/AOO:/workspace/AOO aoo_centos&lt;br /&gt;
&lt;br /&gt;
== Configure ==&lt;br /&gt;
See the buildscript at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== bootstrap ==&lt;br /&gt;
&lt;br /&gt;
== build AOO ==&lt;br /&gt;
&lt;br /&gt;
= The dockerfile explained =&lt;br /&gt;
--!&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249494</id>
		<title>Documentation/Building Guide AOO/Step by step with a Docker Container</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249494"/>
		<updated>2022-01-07T10:04:22Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Building your Docker image */ add -t parameter to indicate image name&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide with a Docker Container}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Docker Containers.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This page focuses on docker container. The goal is to provide a simple to create Build environment to build the Linux Version of Apache OpenOffice (R).&lt;br /&gt;
&lt;br /&gt;
= Prerequisite to this guide =&lt;br /&gt;
You need to have a normal docker installation on your system and a git instance installed.&lt;br /&gt;
&lt;br /&gt;
= Building your Docker image =&lt;br /&gt;
You need the Dockerfile for building the docker image.&lt;br /&gt;
&lt;br /&gt;
Create a build folder on your host, and put the file into that folder. We assume here that the folder is /workspace/docker&lt;br /&gt;
 $ cd /workspace/docker&lt;br /&gt;
 $ wget dockerfile@address TBD .&lt;br /&gt;
 $ docker build -t aoo_centos&lt;br /&gt;
&lt;br /&gt;
= Building Apache OpenOffice (R) =&lt;br /&gt;
== Getting the Code ==&lt;br /&gt;
 $ mkdir /workspace/AOO&lt;br /&gt;
 $ cd /workspace/AOO&lt;br /&gt;
 $ git clone https://gitbox.apache.org/repos/asf/openoffice.git .&lt;br /&gt;
&lt;br /&gt;
== Starting the image and adding the source code ==&lt;br /&gt;
 $ docker run -ti -v /workspace/AOO:/workspace/AOO aoo_centos&lt;br /&gt;
&lt;br /&gt;
== Configure ==&lt;br /&gt;
See the buildscript at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== bootstrap ==&lt;br /&gt;
&lt;br /&gt;
== build AOO ==&lt;br /&gt;
&lt;br /&gt;
= The dockerfile explained =&lt;br /&gt;
--!&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249493</id>
		<title>Documentation/Building Guide AOO/Step by step with a Docker Container</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_with_a_Docker_Container&amp;diff=249493"/>
		<updated>2022-01-07T10:03:12Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Minor reformatting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide with a Docker Container}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Docker Containers.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This page focuses on docker container. The goal is to provide a simple to create Build environment to build the Linux Version of Apache OpenOffice (R).&lt;br /&gt;
&lt;br /&gt;
= Prerequisite to this guide =&lt;br /&gt;
You need to have a normal docker installation on your system and a git instance installed.&lt;br /&gt;
&lt;br /&gt;
= Building your Docker image =&lt;br /&gt;
You need the Dockerfile for building the docker image.&lt;br /&gt;
&lt;br /&gt;
Create a build folder on your host, and put the file into that folder. We assume here that the folder is /workspace/docker&lt;br /&gt;
 $ cd /workspace/docker&lt;br /&gt;
 $ wget dockerfile@address TBD .&lt;br /&gt;
 $ docker build&lt;br /&gt;
&lt;br /&gt;
= Building Apache OpenOffice (R) =&lt;br /&gt;
== Getting the Code ==&lt;br /&gt;
 $ mkdir /workspace/AOO&lt;br /&gt;
 $ cd /workspace/AOO&lt;br /&gt;
 $ git clone https://gitbox.apache.org/repos/asf/openoffice.git .&lt;br /&gt;
&lt;br /&gt;
== Starting the image and adding the source code ==&lt;br /&gt;
 $ docker run -ti -v /workspace/AOO:/workspace/AOO aoo_centos&lt;br /&gt;
&lt;br /&gt;
== Configure ==&lt;br /&gt;
See the buildscript at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== bootstrap ==&lt;br /&gt;
&lt;br /&gt;
== build AOO ==&lt;br /&gt;
&lt;br /&gt;
= The dockerfile explained =&lt;br /&gt;
--!&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=IRC_Communication&amp;diff=248560</id>
		<title>IRC Communication</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=IRC_Communication&amp;diff=248560"/>
		<updated>2021-08-03T20:03:48Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* IRC info */ Change Freenode into Libera.Chat&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[OpenOffice.org]] project uses [[wikipedia:Internet Relay Chat|IRC]] for direct and immediate online communication. Please see [http://www.google.com/calendar/embed?src=k4bgtc8bil9cs2a77lhh1r998g%40group.calendar.google.com google calendar] for schedules.&lt;br /&gt;
&lt;br /&gt;
== IRC Network == &lt;br /&gt;
&lt;br /&gt;
Since June 2021 we changed to &amp;#039;&amp;#039;Libera.chat&lt;br /&gt;
&lt;br /&gt;
=== Libera.chat (irc.libera.chat) ===&lt;br /&gt;
&lt;br /&gt;
{| &lt;br /&gt;
| [irc://irc.libera.chat/Openoffice #openoffice] || Generic channel, please use this for all questions related to Apache OpenOffice&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice-de #openoffice-de] || Channel to meet germanophone speaking people from project Apache OpenOffice&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Freenode (irc.freenode.net) ===&lt;br /&gt;
&lt;br /&gt;
!!! This channel is deprecated !!!&lt;br /&gt;
&lt;br /&gt;
{| &lt;br /&gt;
| [irc://irc.freenode.net/Openoffice.org #Openoffice.org] || Users and generic channel, please use this for questions related to OOo usage&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/dev.openoffice.org #dev.openoffice.org] || Channel for developers discussing building and extending OpenOffice.org&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/specs.openoffice.org #specs.openoffice.org] || Specifications and development processes&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/qa.openoffice.org #qa.openoffice.org] || [[:Category:Quality Assurance|QA]] channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/ooo-api #ooo-api] || [[API]] channel related to API programming, SDK, developer documentation (formerly api.openoffice.org).&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/chart2.openoffice.org #chart2.openoffice.org] || [[Chart2]] channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/ooonlc #ooonlc] || [[NLC|Native Language]] Talk Room&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/debian-oo #debian-oo] || Debian OO.o packaging channel (This is now on irc.oftc.net)&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice.org-de #openoffice.org-de] || Germanophone channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice.org-it #openoffice.org-it] || Italian channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice.org-pl #openoffice.org-pl] || Polish channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice.org-zh #openoffice.org-zh] || Chinese channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/cs.openoffice.org #cs.openoffice.org] || Czech channel (serves also Slovak users)&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice.et #openoffice.et] || Estonian channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/fr.openoffice.org #fr.openoffice.org] || Francophone channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/nl.openoffice.org #nl.openoffice.org] || Dutch channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/ru.openoffice.org #ru.openoffice.org] || Russian channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/OOoES #OOoES] || Spanish Channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/broffice.org #broffice.org] || Brazilian Channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/dba.openoffice.org-de #dba.openoffice.org-de] || Germanophone channel to help with the Base-Modul of OpenOffice.org&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/ooo_macport #ooo_macport] || Native [[Mac OS X]] (Aqua) port of OpenOffice.org developer channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/ooo-ext #ooo-ext] || [[Extensions]] channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/ux.openoffice.org #ux.openoffice.org] || [[User Experience]] channel&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/odftoolkit #odftoolkit] || [[ODF_Toolkit|ODF Toolkit]] channel (discussing strategies, next steps, ...)&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/education.openoffice.org #education.openoffice.org] || [[Education_Project|Education Project]] channel (everything about Education project, ...)&lt;br /&gt;
|-&lt;br /&gt;
| [irc://irc.freenode.net/openoffice.org-docs #openoffice.org-docs] || [[Documentation|Documentation Project]] channel&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== IRC Network: HanIRC (irc.hanirc.org) ==&lt;br /&gt;
&lt;br /&gt;
{| &lt;br /&gt;
| [irc://irc.hanirc.org/openoffice #openoffice] || Korean channel&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== IRC info ==&lt;br /&gt;
&lt;br /&gt;
* [http://irchelp.org/irchelp/new2irc.html New to IRC info]&lt;br /&gt;
* Make sure you register your nick with [[wikipedia:Libera Chat|Libera.Chat]], just follow the [https://libera.chat/guides/registration instructions]&lt;br /&gt;
* If you like [[wikipedia:X-Chat|X-Chat]] but have to use windows sometimes, here is a free win32 [http://www.silverex.org/download/ version ]&lt;br /&gt;
* A client for Mac OS X is [http://colloquy.info/ Colloquy]&lt;br /&gt;
* An extension for Firefox is [https://addons.mozilla.org/en-US/firefox/addon/16 ChatZilla]&lt;br /&gt;
* To create a new channel:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /join #new-channel-oo&lt;br /&gt;
  /msg chanserv register #new-channel-oo [password]&lt;br /&gt;
  /msg chanserv access #new-channel-oo add [who_should_autoop_there_1] [level]&lt;br /&gt;
  /msg chanserv access #new-channel-oo add [who_should_autoop_there_2_and_more] [level]&lt;br /&gt;
  /msg chanserv set #new-channel-oo guard on&lt;br /&gt;
  /msg chanserv level #new-channel set autoop [level-for-autoop]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Who is Who? ==&lt;br /&gt;
&lt;br /&gt;
A list of people &amp;amp;amp; accounts is available: [[DomainDeveloper]]&lt;br /&gt;
[[Category:Website]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Education_Project/Welcome_en&amp;diff=248559</id>
		<title>Education Project/Welcome en</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Education_Project/Welcome_en&amp;diff=248559"/>
		<updated>2021-08-03T20:00:08Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* IRC */ Point to general channel on Libera.Chat&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE: Welcome}}&lt;br /&gt;
&lt;br /&gt;
This is the logo for the Education project :&lt;br /&gt;
&lt;br /&gt;
[[Image:LaMouette-Degree_mini.jpg]]&lt;br /&gt;
&lt;br /&gt;
Author :  Ben Bois ( ben at hooboo dot com )&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;What is Education project ?&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
&lt;br /&gt;
In OpenOffice.org, everything is project. And all websites starts using the rule : &lt;br /&gt;
http://$(project).OpenOffice.org &lt;br /&gt;
&lt;br /&gt;
e.g. : http://education.openoffice.org&lt;br /&gt;
&lt;br /&gt;
At this point in time, this is an incubator project. This means that we have just begun and there is a lot more to do before attaining the status of a Project.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;...  we need you !&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;The Idea&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
&lt;br /&gt;
The idea : &amp;#039;&amp;#039;&amp;#039;create a strong bridge between Educational World and OpenOffice.org Project&amp;#039;&amp;#039;&amp;#039;, leading to &lt;br /&gt;
* synergy &lt;br /&gt;
* visibility &lt;br /&gt;
* and progress for all&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Our Mission&amp;#039;&amp;#039;&amp;#039; == &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;In 3 points&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	- &amp;#039;&amp;#039;&amp;#039;Provide a place for OpenOffice.org users, in Education context&amp;#039;&amp;#039;&amp;#039;: discuss about adapt OpenOffice.org to your pedagogy, your needs ..etc (all levels of Education are concerned )&lt;br /&gt;
&lt;br /&gt;
	- &amp;#039;&amp;#039;&amp;#039;Provide and promote tools&amp;#039;&amp;#039;&amp;#039; adapted to pedagogical use, around OpenOffice.org  &lt;br /&gt;
&lt;br /&gt;
	- &amp;#039;&amp;#039;&amp;#039;Write code together&amp;#039;&amp;#039;&amp;#039; :  we can teach you everything about OpenOffice.org code and how add your: just go ahead&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Objectives writing code together&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
&lt;br /&gt;
* welcome students&lt;br /&gt;
** propose them methodology ( find documentation)&lt;br /&gt;
** teach them (for basic knowledge and autonomy) &lt;br /&gt;
** work shops ( like the practice in ClassRoom )&lt;br /&gt;
** read and explain code together&lt;br /&gt;
** mentor students (drive them to the right solution, and raise their autonomy)&lt;br /&gt;
** project management and guidance&lt;br /&gt;
 &lt;br /&gt;
* work for synergy between professional world and university professors / teachers &lt;br /&gt;
** project setup&lt;br /&gt;
** start research and development oriented projects&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;div align=&amp;quot;left&amp;quot; style=&amp;quot;color:red; font-size:18px&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039;Education Project Effort &amp;#039;&amp;#039;&amp;#039;&amp;lt;/div&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Idea based on [[Efforts | Efforts]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;left&amp;quot; style=&amp;quot;color:blue; font-size:18px&amp;quot;&amp;gt;&amp;#039;&amp;#039;&amp;#039; [[Education_Project/Effort |  ==&amp;gt; Click Here to visit Education Project Effort wiki page]]&amp;#039;&amp;#039;&amp;#039; &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;The Benefits&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;For the Teachers&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
** Visibility&lt;br /&gt;
** Keep the contact with the reality of Industrial Projects&lt;br /&gt;
** direct contacts with high level projects&lt;br /&gt;
** Share their knowledge with other Teachers and Professional&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;For the Students&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
** Have some guidance in their project works is motivating&lt;br /&gt;
** Work directly with high level Professional developers is motivating&lt;br /&gt;
** They contribute for a real and exciting Project&lt;br /&gt;
** Visibility and credibility : good conributions, and open sourced code are a promise for a good job in the future&lt;br /&gt;
** Can valorize their experience&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;The OpenOffice.org Project&amp;#039;&amp;#039;&amp;#039; will ...&lt;br /&gt;
** win new developers, and contributors&lt;br /&gt;
** progress because new eyes means new visions, and new solutions&lt;br /&gt;
** contribute to a social effect: share the knowledge &lt;br /&gt;
** involve more professors and students to participate, and collaborate for OpenSource project&lt;br /&gt;
&lt;br /&gt;
== OUR SPONSORS ==&lt;br /&gt;
&lt;br /&gt;
(any candidate  ? :-)  )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PARTNERS are non profit Organisations ==&lt;br /&gt;
&lt;br /&gt;
If you are a school, and want to support us, please add you in the list :&lt;br /&gt;
&lt;br /&gt;
	University of Technology of Belfort Montebeliard :  http://www.utbm.fr [6]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== What can you do to help us ? ==&lt;br /&gt;
&lt;br /&gt;
DO YOU HAVE A SUGGESTION ?  WANT TO DO OR PROPOSE SOMETHING ?&lt;br /&gt;
&lt;br /&gt;
	Just do it !!   ...and see below what fits at the best to your needs !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CONTRIBUTE ==&lt;br /&gt;
&lt;br /&gt;
Student, Professor, Developer ( C++ , Objective-C , C, Python, everything website) , sponsor or volunteer, you certainly can help us, and feel welcome in Education project !!&lt;br /&gt;
&lt;br /&gt;
With us, you can learn :&lt;br /&gt;
&lt;br /&gt;
* how the source code for OpenOffice.org is organized so that you can develop effectively&lt;br /&gt;
* which tools are used in OpenOffice.org&lt;br /&gt;
* how to build OpenOffice.org for your Operating System&lt;br /&gt;
* how a new feature implementation is accepted and scheduled&lt;br /&gt;
* how the QA is managed&lt;br /&gt;
* how the component or module you want to understand and possibly contribute to functions&lt;br /&gt;
* what to do if you want to add something&lt;br /&gt;
* what to do if you want to create an extension&lt;br /&gt;
* how to define applications for your students adapted to OpenOffice.org&lt;br /&gt;
* how to become a Domain Developer for OpenOffice.org project&lt;br /&gt;
&lt;br /&gt;
Last: we are interested to provide courses about OpenOffice.org. All suggestions are welcome !&lt;br /&gt;
&lt;br /&gt;
== DONATE ==&lt;br /&gt;
&lt;br /&gt;
Soon you&amp;#039;ll be able to help the project by making individual or corporate donations to the project with the aim of furthering the development of infrastructure to sustain the project longevity.&lt;br /&gt;
&lt;br /&gt;
== SEARCH TOOLS about EDUCATION and OpenOffice.org ==&lt;br /&gt;
&lt;br /&gt;
	We do provide tools using OpenOffice.org and adapted to your pedagogy. &lt;br /&gt;
	Every time we can, we try to provide &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PROVIDE US EXPERTISE ==&lt;br /&gt;
&lt;br /&gt;
Are you using OpenOffice.org in your courses/studies ? Please :&lt;br /&gt;
&lt;br /&gt;
	- let us know which School you represent&lt;br /&gt;
	- what you did&lt;br /&gt;
	- provide us pedagogical methods adapted to teaching&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Where start ? ==&lt;br /&gt;
=== JOIN THE PROJECT ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Thanks to respect the steps below :&lt;br /&gt;
&lt;br /&gt;
Go at http://education.openoffice.org &amp;lt;= exactly this site ...&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;If you don&amp;#039;t have a login, create one is mandatory ( on top right)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Validate all the steps allowing to connect yourself to the Education Project&amp;#039;&amp;#039;&amp;#039; ( confirm the subscription mail and so on )&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Log you in&amp;#039;&amp;#039;&amp;#039; with the password you have choosen,&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;=&amp;gt; Click on Membership, then on Request project membership / role&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Finaly, click on  &amp;quot;Submit Request&amp;quot; and wait for a project Lead to accept your pending request&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
That&amp;#039;s it  :-)&lt;br /&gt;
&lt;br /&gt;
=== MAILING LISTS ===&lt;br /&gt;
&lt;br /&gt;
Just subscribe to dev@education.openoffice.org (highly advised) at : http://education.openoffice.org/servlets/ProjectMailingListList [3]&lt;br /&gt;
&lt;br /&gt;
Archives are extremely important, and are usefull to retrieve something being discussed long time ago.&lt;br /&gt;
&lt;br /&gt;
=== WEB ===&lt;br /&gt;
&lt;br /&gt;
	Fixed informations are on Education project website : [1] http://education.openoffice.org&lt;br /&gt;
&lt;br /&gt;
	You&amp;#039;ll find : links for tools, links for exchange area FIXME ( add some of them )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== WIKI ===&lt;br /&gt;
&lt;br /&gt;
	Alive informations stand in our wiki :  [2]  http://wiki.services.openoffice.org/wiki/Education_Project&lt;br /&gt;
&lt;br /&gt;
	Localized wiki pages : &lt;br /&gt;
&lt;br /&gt;
		French page :  &lt;br /&gt;
&lt;br /&gt;
		Switzerland ( german at this time) : [3] http://wiki.services.openoffice.org/wiki/Project_EDUCATION-ch&lt;br /&gt;
&lt;br /&gt;
		(other ) : TODO &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== IRC  ===&lt;br /&gt;
&lt;br /&gt;
Discuss with us ! &lt;br /&gt;
&lt;br /&gt;
	We have an IRC channel  and you can meet us for true: &lt;br /&gt;
&lt;br /&gt;
	Server is irc.libera.chat&lt;br /&gt;
	Channel is #openoffice&lt;br /&gt;
&lt;br /&gt;
	See you :-)&lt;br /&gt;
&lt;br /&gt;
=== REGULAR IRC MEETINGS ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	We hold regular IRC meetings, and all logs are public.&lt;br /&gt;
&lt;br /&gt;
	You&amp;#039;ll find them here : http://wiki.services.openoffice.org/wiki/Previous_Education_Meetings_logs  [4]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	If you want to join, please have a look at : http://wiki.services.openoffice.org/wiki/Education_IRC_meetings  [5]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== LINKS (summary ) ===&lt;br /&gt;
* [http://education.openoffice.org The main website]&lt;br /&gt;
* [http://wiki.services.openoffice.org/wiki/Education_Project The Wiki]&lt;br /&gt;
* [http://education.openoffice.org/servlets/ProjectMailingListList Mailing list]&lt;br /&gt;
* [http://wiki.services.openoffice.org/wiki/Previous_Education_Meetings_logs Logs] of previous Education IRC Meetings&lt;br /&gt;
* [http://wiki.services.openoffice.org/wiki/Education_IRC_meetings Education IRC meetings]&lt;br /&gt;
* [http://www.utbm.fr University of Technology of Belfort Montbeliard]&lt;br /&gt;
* [http://projects.openoffice.org/incubator.html Incubator projects]&lt;br /&gt;
&lt;br /&gt;
=== EDUCATION Team ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Education_Project/Team | Click Here to know who we are, and more]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:Education]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Development&amp;diff=248558</id>
		<title>Development</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Development&amp;diff=248558"/>
		<updated>2021-08-03T19:57:21Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Suggest general IRC channel on Libera.Chat instead of dedicated channel on Freenode&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
== Getting started with Apache OpenOffice development ==&lt;br /&gt;
&lt;br /&gt;
You are at the start of a long, but very exciting journey! Apache OpenOffice is a large and inclusive project. No matter what your interests are, there is always a place for you here. There are many ways to get started, but the easiest one is to:&lt;br /&gt;
&lt;br /&gt;
=== Get the source code and start building ===&lt;br /&gt;
Build you own OpenOffice so that you are able to modify things&lt;br /&gt;
{{Tip| The [[Documentation/Building_Guide_AOO|Building Guide]] will walk you through this.}}&lt;br /&gt;
&lt;br /&gt;
=== Fix a bug or an annoyance ===&lt;br /&gt;
Pick up your favorite bug/annoyance, and try to fix that. Read how to [[Contributing_Patches|Contribute a patch]] via Issue Tracker.&lt;br /&gt;
{{Tip| Browse [[https://bz.apache.org/ooo/buglist.cgi?issue_type=DEFECT&amp;amp;issue_type=ENHANCEMENT&amp;amp;issue_type=FEATURE&amp;amp;issue_status=UNCONFIRMED&amp;amp;issue_status=NEW&amp;amp;issue_status=STARTED&amp;amp;issue_status=REOPENED&amp;amp;field0-0-0=votes&amp;amp;type0-0-0=greaterthan&amp;amp;value0-0-0=50&amp;amp;order=issues.votes%20desc,%20issues.priority,%20issues.issue_type Top voted issues]]  or review our [[To-Dos]] list that presents the key issues of interest to the core components}}&lt;br /&gt;
&lt;br /&gt;
=== Contribute more ===&lt;br /&gt;
When you see that hacking AOO pleases you, it&amp;#039;s time to look for bigger tasks, get in contact on [[IRC]] or on the [http://openoffice.apache.org/mailing-lists.html development mailing list]. The list is friendly and supportive; the people want to help.&lt;br /&gt;
&lt;br /&gt;
== Create an extension ==&lt;br /&gt;
Extensions are easy to write and fun to see in action. You can add features that millions of others will use by using Java, Python, StarBasic, or JavaScript. Find more on [[Extensions_development|Extension development]] wiki page. The OpenOffice.org UNO component model is quite extensive and can be daunting at first. To help you, there is a comprehensive [[Documentation/DevGuide|Development Guide]]. The easiest way to get started is by using the plugins for [[OpenOffice_NetBeans_Integration|Netbeans]] and for [[OpenOffice_Eclipse_Integration|Eclipse]]. Plus, you can get help from the [[http://openoffice.apache.org/mailing-lists.html#api-mailing-list-public API mailing list]].&lt;br /&gt;
&lt;br /&gt;
== Development resources ==&lt;br /&gt;
* [[Documentation/Building Guide AOO|Building Guide]]&lt;br /&gt;
* [[Documentation/DevGuide|Development Guide]]&lt;br /&gt;
* [http://opengrok.adfinis-sygroup.org/source/ Opengrok] - source browser&lt;br /&gt;
* [http://api.openoffice.org OpenOffice.org API]&lt;br /&gt;
* [https://issues.apache.org/ooo/ Bugtracker]&lt;br /&gt;
* [[Environment Variables]] - a description of handy environment variables used at runtime &lt;br /&gt;
* [[Source code directories| A description of the source directories]]&lt;br /&gt;
* [[Localization for developers]]&lt;br /&gt;
* [[Build Bootstrapping]]&lt;br /&gt;
&lt;br /&gt;
== Further reading ==&lt;br /&gt;
* [[IRC Communication|Meet the team on IRC]]&lt;br /&gt;
* [[Using_Cpp_with_the_OOo_SDK|Using C++ with OOo SDK]]&lt;br /&gt;
* [[Tutorials]] - hacker tutorials to get the hang of the code &lt;br /&gt;
* [[Hacking]]&lt;br /&gt;
* [[Debugging]] - for when it all goes wrong &lt;br /&gt;
* [[Contributing Patches]] - for when you have something to fold back&lt;br /&gt;
* [[Commit Rights]] - An overview of how to attain commit rights, and what to do with them once you get them &lt;br /&gt;
* [[Tips]] - misc. hints &amp;amp;amp; tips. &lt;br /&gt;
* [[Compiler versions used by port maintainers and release engineers]] &lt;br /&gt;
* [[Writing warning-free code|Warning-free Code]] and [[Writing correct Cplusplus|Correct C++]] &lt;br /&gt;
&lt;br /&gt;
== Education project ==&lt;br /&gt;
{{Tip|If you don&amp;#039;t find the instructions in the Wiki good enough to guide you or if you are interested in some aspect that is not covered, feel free to subscribe and ask on the [mailto:dev_at_openoffice.org dev@openoffice.org] mailing list. See [[Communication]] for more infromation on how get in touch with the OpenOffice.org project.}}&lt;br /&gt;
&lt;br /&gt;
{{Tip|Another solution is to contact the [[Education Project]], which aims to find future OpenOffice.org developers, mainly students, who are discovering OpenOffice.org Project. Get in touch on IRC: [ircs://irc.libera.chat/openoffice #openoffice on Libera.Chat]}}&lt;br /&gt;
&lt;br /&gt;
{{Tip|On the [[Education_ClassRoom|ClassRoom]] page, you will find more information about the essentials. For example [[Education_ClassRoom/Practice|Practice]], or [[Education_ClassRoom/Previous_Logs|IRC Meetings Logs]] we did as &amp;quot;ClassRooms&amp;quot;.}}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Development]][[Category:Build System]][[Category:SCM]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248520</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248520"/>
		<updated>2021-07-18T12:55:15Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Update&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install getopt p5-archive\* p5-lwp-protocol-https p5-mozilla-ca perl5 pkgconfig git subversion&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;br /&gt;
 $ cd /usr/local/share/java/ &amp;amp;&amp;amp; sudo ln -s apache-ant-1.9.13 apache-ant-1.9&lt;br /&gt;
&lt;br /&gt;
Work in progress: synchronize this page with the build script&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248516</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248516"/>
		<updated>2021-07-09T19:03:57Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* MacOS Catalina */ port openssl10&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install getopt openssl10 p5-archive\* p5-lwp-protocol-https p5-mozilla-ca perl5 pkgconfig subversion&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;br /&gt;
 $ cd /usr/local/share/java/ &amp;amp;&amp;amp; sudo ln -s apache-ant-1.9.13 apache-ant-1.9&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248515</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248515"/>
		<updated>2021-07-08T18:57:09Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Update ports&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install getopt p5-archive\* p5-lwp-protocol-https p5-mozilla-ca perl5 pkgconfig subversion&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;br /&gt;
 $ cd /usr/local/share/java/ &amp;amp;&amp;amp; sudo ln -s apache-ant-1.9.13 apache-ant-1.9&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248511</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248511"/>
		<updated>2021-06-26T19:53:41Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Perl must come from macports&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\* subversion getopt perl5 p5-mozilla-ca p5-lwp-protocol-https&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;br /&gt;
 $ cd /usr/local/share/java/ &amp;amp;&amp;amp; sudo ln -s apache-ant-1.9.13 apache-ant-1.9&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248510</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248510"/>
		<updated>2021-06-26T19:37:59Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* MacOS Catalina */ p5-mozilla-ca&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\* subversion getopt p5-mozilla-ca&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;br /&gt;
 $ cd /usr/local/share/java/ &amp;amp;&amp;amp; sudo ln -s apache-ant-1.9.13 apache-ant-1.9&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248509</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248509"/>
		<updated>2021-06-26T13:54:16Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Ant installation directory&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\* subversion getopt&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;br /&gt;
 $ cd /usr/local/share/java/ &amp;amp;&amp;amp; sudo ln -s apache-ant-1.9.13 apache-ant-1.9&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248508</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248508"/>
		<updated>2021-06-26T13:52:40Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: getopt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\* subversion getopt&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248505</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248505"/>
		<updated>2021-06-26T10:33:37Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Apache ant&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\* subversion&lt;br /&gt;
# Install Apache Ant 1.9.13 into &amp;#039;&amp;#039;&amp;#039;/usr/local/share/java/&amp;#039;&amp;#039;&amp;#039; (will make a subdirectory with the version name)&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248504</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248504"/>
		<updated>2021-06-26T10:20:55Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Update ports list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\* subversion&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248503</id>
		<title>User:Ardovm/macOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/macOS&amp;diff=248503"/>
		<updated>2021-06-26T10:03:07Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: WIP: notes about macOS&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MacOS Catalina=&lt;br /&gt;
Purpose: build AOO41X&lt;br /&gt;
&lt;br /&gt;
# Download Xcode 12.0.1 and install it&lt;br /&gt;
# Download Xcode 7.3.1&lt;br /&gt;
# Download https://github.com/devernay/xcodelegacy&lt;br /&gt;
 $ curl -OL https://raw.githubusercontent.com/devernay/xcodelegacy/master/XcodeLegacy.sh&lt;br /&gt;
 $ chmod +x XcodeLegacy.sh&lt;br /&gt;
 $ ./XcodeLegacy.sh -osx1011 buildpackages&lt;br /&gt;
 $ sudo ./XcodeLegacy.sh -osx1011 install&lt;br /&gt;
# Install macports&lt;br /&gt;
# Install necessary ports:&lt;br /&gt;
 $ sudo port install p5-archive\*&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Building_on_MacOsX&amp;diff=248502</id>
		<title>Documentation/Building Guide AOO/Building on MacOsX</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Building_on_MacOsX&amp;diff=248502"/>
		<updated>2021-06-25T19:58:12Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Requirements for Xcode 7 (or newer) */ fix broken link to autoconf sources&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Documentation/Building Guide AOO TOC&lt;br /&gt;
|ShowNextPage=none&lt;br /&gt;
|ShowPrevPage=none&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{DISPLAYTITLE:Building on MacOSX}}&lt;br /&gt;
[[Category:MacOSX]][[Category:Documentation]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Overview =&lt;br /&gt;
&lt;br /&gt;
Building Apache OpenOffice from source code follows the &lt;br /&gt;
platform independent [[Documentation/Building_Guide_AOO| building guide]]&lt;br /&gt;
when the build requirements outlined below are fulfilled.&lt;br /&gt;
&lt;br /&gt;
= General build requirements =&lt;br /&gt;
&lt;br /&gt;
Please see the [[Documentation/Building Guide AOO#General_Build_Requirements|general build requirements]] page.&lt;br /&gt;
&lt;br /&gt;
= Mac specific requirements for building AOO 4.1 (and older) =&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!style=&amp;quot;width: 20%&amp;quot;|What&lt;br /&gt;
! Where to get / Remarks&lt;br /&gt;
|-&lt;br /&gt;
| Mac OS X version 10.7 (aka Lion) or later&lt;br /&gt;
| provided by Apple&lt;br /&gt;
|- &lt;br /&gt;
| Xcode version 7 or later.&lt;br /&gt;
| Use the App Store application to get and install it. For Xcode 7 (or newer) some [[#XCODE7|extra steps]] are needed.&lt;br /&gt;
You can also [http://developer.apple.com/technology/xcode.html download] it free of charge, but a registration at the [https://connect.apple.com/ Apple Developer Connection] site is required for that. &lt;br /&gt;
|- &lt;br /&gt;
| MacOSX SDK&lt;br /&gt;
| SDKs compatible with OSX 10.7 are automatically provided by installing XCode 7 or newer. That most recent compatible SDK is 10.11; SDKs for 10.12 and above are not supported due to Apple&amp;#039;s deprecation of Quicktime, which is needed for vcl.&lt;br /&gt;
|-&lt;br /&gt;
| gnutar&lt;br /&gt;
| OSX&amp;lt;=10.8 contains the tool directly, for OSX&amp;gt;=10.9 some [[#OSX109|extra steps]] are needed.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;XCODE5&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Requirements for Xcode 7 (or newer) =&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 20%&amp;quot;|What&lt;br /&gt;
! Where to get / Remarks&lt;br /&gt;
|-&lt;br /&gt;
| Xcode commandline tools&lt;br /&gt;
| run this command in a terminal&lt;br /&gt;
 sudo xcode-select --install&lt;br /&gt;
|-&lt;br /&gt;
| autoconf&lt;br /&gt;
| Run these commands in a terminal&lt;br /&gt;
 curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz&lt;br /&gt;
 tar xvjf autoconf-2.69.tar.gz&lt;br /&gt;
 pushd autoconf-2.69&lt;br /&gt;
 ./configure --prefix=/usr/local&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 popd&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also install via MacPorts&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;OSX109&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= OSX 10.9 (or newer) specific requirements =&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 20%&amp;quot;|What&lt;br /&gt;
! Where to get / Remarks&lt;br /&gt;
|-&lt;br /&gt;
| gnutar&lt;br /&gt;
| Run these commands in a terminal&lt;br /&gt;
 curl -OL http://ftpmirror.gnu.org/tar/tar-1.27.tar.bz2&lt;br /&gt;
 tar xvjf tar-1.27.tar.bz2&lt;br /&gt;
 pushd tar-1.27&lt;br /&gt;
 ./configure --prefix=/usr/local&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
 sudo ln -s /usr/local/bin/tar /usr/local/bin/gnutar&lt;br /&gt;
 popd&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also install via MacPorts&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Reference Build System =&lt;br /&gt;
&lt;br /&gt;
The reference build system for AOO 4.1.x and 4.2.x is a macOS VM with 8x3.33 cores and 24GB of RAM. The AOO 4.1.x VM is running macOS 10.13 (High Sierra) with Xcode 11,  but requires the MacOSX10.11.sdk (SDK 10.12 and above do not support QuickTime, which is a requirement for AOO 4.1.x). We use  [https://github.com/devernay/xcodelegacy xcodelegacy] to install the required SDK into Xcode (You could also use Xcode7 directly). This setup is also configured to allow us to product the &amp;quot;Official&amp;quot; Community builds for macOS/OSX and supports versions as old as 10.9 (&amp;#039;&amp;#039;Mavericks&amp;#039;&amp;#039;). On this platform it takes 2-3 hours for a full build.&lt;br /&gt;
&lt;br /&gt;
For AOO 4.2.x and later, we are running macOS 10.15 (Catalina) and Xcode 12.2. This allows us to continue to build for older platforms (as old as OS X &amp;#039;&amp;#039;&amp;#039;10.9&amp;#039;&amp;#039;&amp;#039;! ) but also sign our releases for Apple Gatekeeper compatibility and deprecate the requirement for a QuickTime-compatible SDK.&lt;br /&gt;
&lt;br /&gt;
If building for your own setup, some of the below may not be required.&lt;br /&gt;
&lt;br /&gt;
== 3rd Party Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Installed in /usr/local: ===&lt;br /&gt;
&lt;br /&gt;
* Apache ant 1.9.9 (or later)&lt;br /&gt;
* dmake 4.13.0 / https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz  (./configure --prefix=/usr/local)&lt;br /&gt;
* epm 5.0.0 / https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz (./configure --prefix=/usr/local)&lt;br /&gt;
* openssl 1.0.2l (or later) (no-shared)&lt;br /&gt;
* libxml2-2.9.6 (or later) (--prefix=/usr/local --enable-shared=no --without-iconv)&lt;br /&gt;
* libxslt-1.1.31 (or later) (--prefix=/usr/local --enable-shared=no)&lt;br /&gt;
* pkg-config 0.29.2 (or later) (--prefix=/usr/local)&lt;br /&gt;
* jdk-7u80-macosx-x64&lt;br /&gt;
&lt;br /&gt;
You will notice that the recommended version of epm for OS X is 4.3 (or later); This is because previous versions required the long deprecated &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;PackageMaker&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; application (as well as &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;PackageMaker&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; being installed in a hardcoded location). Starting with epm 4.3, the official OS X &amp;#039;&amp;#039;pkgbuild&amp;#039;&amp;#039; utility is supported, removing the need for &amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;PackageMaker&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;. AOO specific versions of epm and dmake are available [https://github.com/jimjag/ on Github].&lt;br /&gt;
&lt;br /&gt;
=== Installed in /opt/local via MacPorts: ===&lt;br /&gt;
&lt;br /&gt;
* autoconf (symlinked to /usr/local/bin)&lt;br /&gt;
* gnutar (symlinked to /usr/local/bin)&lt;br /&gt;
* perl5 (symlinked to /usr/local/bin)&lt;br /&gt;
* subversion&lt;br /&gt;
* git&lt;br /&gt;
&lt;br /&gt;
You will also need to install the required Perl packages noted in the general build page since OS X does not include them by default. If you don&amp;#039;t want to mix System and User modifications, you can use MacPorts/HomeBrew to install Perl and use this user-land version for these extra packages.&lt;br /&gt;
&lt;br /&gt;
== Local Environment Requirements: ==&lt;br /&gt;
* Make sure that &amp;#039;&amp;#039;/usr/local/bin&amp;#039;&amp;#039; is in your &amp;#039;&amp;#039;PATH&amp;#039;&amp;#039;.&lt;br /&gt;
* Set and export JAVA_HOME (export JAVA_HOME=$(/usr/libexec/java_home -v 1.7))&lt;br /&gt;
* Ensure that these env variables are also correct (and exported):&lt;br /&gt;
** ANT_HOME=/usr/local/share/java/apache-ant&lt;br /&gt;
** LIBRARY_PATH=/usr/local/lib&lt;br /&gt;
** C_INCLUDE_PATH=/usr/local/include&lt;br /&gt;
** CPLUS_INCLUDE_PATH=/usr/local/include&lt;br /&gt;
&lt;br /&gt;
== Configure and Build ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; border=&amp;quot;1&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| Run this command in a terminal&lt;br /&gt;
 ./configure   \&lt;br /&gt;
        --enable-verbose \&lt;br /&gt;
        --with-openldap \&lt;br /&gt;
        --enable-category-b \&lt;br /&gt;
        --enable-bundled-dictionaries \&lt;br /&gt;
        --enable-wiki-publisher \&lt;br /&gt;
        --without-junit \&lt;br /&gt;
        --with-jdk-home=&amp;quot;$JAVA_HOME&amp;quot; \&lt;br /&gt;
        --with-ant-home=&amp;quot;$ANT_HOME&amp;quot; \&lt;br /&gt;
        --with-epm=/usr/local/bin/epm \&lt;br /&gt;
        --with-dmake-path=/usr/local/bin/dmake \&lt;br /&gt;
        --without-stlport \&lt;br /&gt;
        --with-package-format=&amp;quot;dmg&amp;quot; \&lt;br /&gt;
        --disable-systray \&lt;br /&gt;
        --with-alloc=internal \&lt;br /&gt;
        --with-lang=&amp;quot;${LANGS}&amp;quot; &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;LANGS&amp;#039;&amp;#039; env variable should contain the list of languages you wish to build for (e.g. &amp;quot;en-GB en-US es eu fi&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
Continue with the standard, platform independent build instructions. Copies of the official build scripts (and their corresponding &amp;#039;&amp;#039;config.log&amp;#039;&amp;#039; outputs) can be found [https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ here].&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Windows&amp;diff=248329</id>
		<title>Documentation/Building Guide AOO/Step by step Windows</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Windows&amp;diff=248329"/>
		<updated>2021-05-04T19:42:39Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Windows 7, Windows 8.1, Windows 10 */ Link to GDI+ download&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Windows}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Windows. A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Windows 7, Windows 8.1, Windows 10 =&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Complete requirements found at [https://wiki.openoffice.org/wiki/Documentation/Building_Guide_AOO#General_Build_Requirements General Build Requirements] and [https://wiki.openoffice.org/wiki/Documentation/Building_Guide_AOO/Building_on_Windows Building on Windows].&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
This is a &amp;#039;&amp;#039;&amp;#039;sample&amp;#039;&amp;#039;&amp;#039; step-by-step guide - check the complete requirements and report on dev@openoffice.apache.org, if problems with this step-by-step guide occur.&lt;br /&gt;
&lt;br /&gt;
*Install Cygwin, &amp;#039;&amp;#039;&amp;#039;32-bit version&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
**Browse to [https://www.cygwin.com https://www.cygwin.com] and click on the setup-x86.exe link to download the 32-bit version (the latest Cygwin DLL known to work is 3.1.7-1) or use [https://www.cygwin.com/setup-x86.exe this direct link]. Note: &amp;quot;make&amp;quot; has to be downgraded to version 4.2.1-2 for building AOO up to version 4.1.7.&lt;br /&gt;
**Run the installer and click through the questions&lt;br /&gt;
**On the &amp;quot;Choose A Download Site&amp;quot; select a nearby download server&lt;br /&gt;
**Expect a &amp;quot;Setup Alert&amp;quot; dialog box on the first cygwin install on the computer: click OK to close it&lt;br /&gt;
**On the page that allows you to select additional packages select: &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; From the &amp;#039;&amp;#039;&amp;#039;Archive&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;zip, unzip&amp;lt;/pre&amp;gt; From the &amp;#039;&amp;#039;&amp;#039;Devel&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;autoconf, gperf, gcc-g++, bison, flex, patch, git, make&amp;lt;/pre&amp;gt; From the &amp;#039;&amp;#039;&amp;#039;Net&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;rsync&amp;lt;/pre&amp;gt;From the &amp;#039;&amp;#039;&amp;#039;Perl&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;perl, perl-XML-SAX-Expat, perl-Archive-Zip, perl-LWP-Protocol-https, perl-XML-parser, perl-libwww-perl, perl-Digest-SHA, perl-Net-SSLeay&amp;lt;/pre&amp;gt;As a shortcut you can install everything needed with one command:&amp;lt;pre&amp;gt;setup-x86.exe -P zip -P unzip -P autoconf -P gperf -P gcc-g++ -P bison -P flex -P patch -P git -P make -P rsync -P perl -P perl-XML-SAX-Expat -P perl-Archive-Zip -P perl-LWP-Protocol-https -P perl-XML-parser -P perl-libwww-perl -P perl-Digest-SHA -P perl-Net-SSLeay&amp;lt;/pre&amp;gt;&amp;lt;i&amp;gt;(If you prefer to install packages with a Linux kind of touch, you can skip selecting the packages and instead select just the package &amp;lt;b&amp;gt;lynx&amp;lt;/b&amp;gt; (enter lynx in the Search box and select the lynx entry in the Web/Default section). You would then install the other packages from the cygwin command line using lynx as explained ahead. However, selecting the packages from the Cygwin interface is recommended.)&amp;lt;/i&amp;gt;&lt;br /&gt;
**Click Next to finish package selection.&lt;br /&gt;
**Click Next to resolve dependencies.&lt;br /&gt;
**After installation is finished click the Finish button to close the dialog.&lt;br /&gt;
&lt;br /&gt;
*Start Cygwin bash in a terminal&lt;br /&gt;
&lt;br /&gt;
::In Windows 7 and later you can just type &amp;quot;cygwin&amp;quot; into the Start Menu search bar and then click on the Cygwin App. Or you can:&lt;br /&gt;
::*Press {{key|Windows|R}}&lt;br /&gt;
::*Type &amp;quot;C:\cygwin\Cygwin.bat&amp;quot; (if that&amp;#039;s the path you installed Cygwin to)&lt;br /&gt;
::*Hit Return.&lt;br /&gt;
:::&amp;lt;i&amp;gt;(If you haven&amp;#039;t installed the necessary packages from the Cygwin interface yet because you would prefer to install them using lynx from the Cygwin command line, then you should do so now. First install &amp;lt;b&amp;gt;apt-cyg&amp;lt;/b&amp;gt; from the Github repository:)&amp;lt;pre&amp;gt;cd /cygdrive/c/temp&amp;lt;/pre&amp;gt;(or any other temporary directory of your choice)&amp;lt;pre&amp;gt;lynx -source rawgit.com/transcode-open/apt-cyg/master/apt-cyg &amp;gt; apt-cyg&amp;amp;#10;chmod +x apt-cyg&amp;amp;#10;mv apt-cyg /usr/local/bin/&amp;lt;/pre&amp;gt;Use &amp;lt;b&amp;gt;apt-cyg&amp;lt;/b&amp;gt; to install missing cygwin packages:&amp;lt;pre&amp;gt;apt-cyg install perl zip unzip gperf autoconf rsync gcc-g++ bison flex patch git make&amp;lt;/pre&amp;gt;(You must also provide to install the missing perl packages, for example with &amp;quot;cpan -i Archive::Zip LWP::UserAgent LWP::Protocol XML::Parser&amp;quot; etc. however there can be some dependency conflicts, the recommended method is installing the packages from the cygwin interface)&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Replace symlinked awk with copy of gawk.exe:&amp;lt;pre&amp;gt;rm /usr/bin/awk&amp;amp;#10;mv /usr/bin/gawk.exe /usr/bin/awk.exe&amp;lt;/pre&amp;gt;Note that if the &amp;lt;code&amp;gt;rm&amp;lt;/code&amp;gt; command fails then the &amp;lt;code&amp;gt;mv&amp;lt;/code&amp;gt; is not necessary.&lt;br /&gt;
&lt;br /&gt;
* Install Java, &amp;#039;&amp;#039;&amp;#039;32-bit version&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
::Choose between JDK or OpenJDK. Versions 1.7 and 1.8 are known to work.&lt;br /&gt;
::(We need the 32-bit version because JNI requires the JVM&amp;#039;s bitness to match the C/C++ bitness).&lt;br /&gt;
&lt;br /&gt;
* Install Apache Ant&lt;br /&gt;
**Browse to https://ant.apache.org/bindownload.cgi&lt;br /&gt;
**Chose a mirror near you.&lt;br /&gt;
**Download the zip archive (currently that is apache-ant-1.9.15-bin.zip or apache-ant-1.10.8-bin.zip).&amp;lt;br /&amp;gt; Note that Apache Ant 1.10.x will only work with Java 8.&lt;br /&gt;
**Open downloaded archive in file explorer and unzip it to a location of your choice, eg &amp;lt;code&amp;gt;c:\&amp;lt;/code&amp;gt;.  Note that &amp;lt;code&amp;gt;C:\Program Files (x86)&amp;lt;/code&amp;gt; will not work due to problems of quoting the spaces and parentheses.&lt;br /&gt;
    &lt;br /&gt;
* Install Microsoft Windows SDK for Windows 7 and .NET Framework 3.5. SP1 (recommended by Microsoft. Note: later versions of the Windows SDK will not work. AOO can not be built with MSVC 2010 or 2012 - MSVC 2008 is needed and is found in the Windows 7 SDK) &lt;br /&gt;
** Browse to http://www.microsoft.com/en-us/download/details.aspx?id=3138.&lt;br /&gt;
** Download winsdk_web.exe and run the web installer. You can use the default values in the installation dialog, except when prompted with the installation path use a path that has no spaces or parentheses (e.g. &amp;quot;C:\Microsoft_SDKs\Windows\v7.0&amp;quot;), because otherwise the build process will choke on those spaces or parentheses.&lt;br /&gt;
** Alternatively download the iso image http://www.microsoft.com/en-us/download/details.aspx?id=18950. Burn it to a dvd or unzip it.&lt;br /&gt;
&lt;br /&gt;
* Download MS Visual C++ 2008 SP1 Redistributable Package (x86)&lt;br /&gt;
** https://www.microsoft.com/en-us/download/details.aspx?id=26368 (There have been security updates, which are not included in older versions)&lt;br /&gt;
**Download files vcredist_x86.exe and vcredist_x64.exe&amp;lt;br /&amp;gt; We need both 32 and 64-bit versions because we build 64-bit shell extensions. If you download the most recent version of Apache OpenOffice and unpack it, you will find the files vcredist_x86.exe and vcredist_x64.exe in folder redist. You can use them as well.&lt;br /&gt;
&lt;br /&gt;
* Optional: Install DirectX SDK (for graphics hardware support in the slide show)&lt;br /&gt;
** Browse to http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&amp;amp;id=6812&lt;br /&gt;
** Download and run DXSDK_Jun10.exe. Choose to install to a custom path, and use a path that has neither spaces nor parentheses (e.g. &amp;lt;code&amp;gt;C:\Microsoft_DirectX_SDK_June_2010&amp;lt;/code&amp;gt;), because otherwise the build will not be able to parse the path and will choke on the spaces or parentheses. &amp;lt;i&amp;gt;(If you receive an S1023 error towards the end of the installation, [https://support.microsoft.com/it-it/kb/2728613 the fix is simple]. The issue occurs because a newer version of the Visual C++ 2010 Redistributable is present on the computer. The June 2010 DirectX SDK installs version 10.0.30319 of the Visual C++ Redistributable. To resolve this issue, you must uninstall all versions of the Visual C++ 2010 Redistributable before installing the June 2010 DirectX SDK. You may have one or more of the following products installed: Visual C++ 2010 Redistributable x86, Visual C++ 2010 Redistributable x64.  You can use Add or Remove Programs in Control Panel to uninstall the products. Or, you can run the following commands from an administrator command prompt: &amp;lt;pre&amp;gt;MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5} &amp;amp;#10;MsiExec.exe /passive /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}&amp;lt;/pre&amp;gt; and then run the DirectX SDK installer. After installing the June 2010 DirectX SDK, you may then reinstall the most current version of the [http://www.microsoft.com/download/details.aspx?id=26999 Visual C++ 2010 Redistributable Package].)&amp;lt;/i&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Optional: Install Windows Driver Kit 7.1.0 (for enabling activex)&lt;br /&gt;
** Download [http://www.microsoft.com/en-us/download/details.aspx?id=11800 WDK 7.1.0] (is an ISO image). Cannot use later versions of Windows Driver Kit because they do not have ATL which is needed to build AOO with ActiveX. (I recommend to download using Internet Explorer, otherwise the install may fail a Windows Authenticity test, whereas this does not happen using Internet Explorer to download the ISO image.)&lt;br /&gt;
** Mount the ISO image and install.&lt;br /&gt;
&lt;br /&gt;
* Optional: Install NSIS installer (for creating the EXE installer)&lt;br /&gt;
** Browse to [https://sourceforge.net/projects/nsis/files/ https://sourceforge.net/projects/nsis/files/]&lt;br /&gt;
** Download and run the installer (note that versions of NSIS &amp;gt;= 3.* are only compatible with branch 4.1.3 or later! otherwise you will have to install at most [https://sourceforge.net/projects/nsis/files/NSIS%202/2.51/nsis-2.51-setup.exe/download NSIS 2.51]). Recommended to install to custom location, choose a path without any spaces (e.g. &amp;quot;C:\NSIS&amp;quot;).&lt;br /&gt;
** For Asian languages (ja, ko, zh-CN, zh-TW) the language files have to be edited, otherwise the graphics in the first installer windows don&amp;#039;t fit. In &amp;quot;{NSISDIR}\Contrib\Language files\Japanese.nlf&amp;quot; (Korean.nlf, TradChinese.nlf, SimpChinese.nlf accordingly) change: &amp;lt;pre&amp;gt;Font and size - dash (-) means default&amp;amp;#10;{font-name}&amp;amp;#10;{font-size}&amp;lt;/pre&amp;gt; to:&amp;lt;pre&amp;gt;Font and size - dash (-) means default&amp;amp;#10;-&amp;amp;#10;-&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
* Optional: Install the MozillaBuild tools. These are needed to build the &amp;lt;b&amp;gt;NSS&amp;lt;/b&amp;gt; (&amp;quot;Network Security Services&amp;quot;) module. Download from [https://ftp.mozilla.org/pub/mozilla/libraries/win32/ here]. Install to a custom path without any spaces, such as &amp;lt;code&amp;gt;C:\mozilla-build&amp;lt;/code&amp;gt;. MozillaBuild tools version 3.0 or newer require a 64-bit Windows. When building on 32-bit Windows it is recommended to use version 2.2.0.&lt;br /&gt;
&lt;br /&gt;
* Get AOO source code. You can use the source release or check out from SVN. Build from source release if you want to build OpenOffice once but don&amp;#039;t want to contribute patches. If you will contribute patches, you need to generate them against an actual version of trunk. In this case check out from SVN to be able to rebase before generating patches. You can work with subversion or with git-svn. Do not use a tool that changes line endings, such as the default configuration of TortoiseSVN. NOTE: Do not place the source directory under the Cygwin file system. This means that placing it, for example, at &amp;#039;/home/aoo/source&amp;#039; is not recommended.&lt;br /&gt;
&lt;br /&gt;
::; Source release:&lt;br /&gt;
::* Browse to http://www.openoffice.org/download/other.html#tested-sdk and locate the table row that starts with &amp;quot;Source code&amp;quot;&lt;br /&gt;
::* Download source code in an archive format of your choice (note that tar.bz2 is typically smaller than tar.gz and zip)&lt;br /&gt;
::* Optional: Verify the archive - following given link or instructions.&lt;br /&gt;
::* Unpack source (in cygwin-terminal). Use the file name exactly as downloaded.&amp;lt;pre&amp;gt;cd /tmp&amp;amp;#10;tar -xjf &amp;lt;download-location&amp;gt;/&amp;lt;downloaded-source-release.tar.bz2&amp;gt;&amp;amp;#10;cd &amp;lt;unpacked-source&amp;gt;/main&amp;amp;#10;&amp;lt;/pre&amp;gt;Do not use Windows unpacker, they might cause access right problems. &lt;br /&gt;
&lt;br /&gt;
::; Checkout from SVN using subversion :&lt;br /&gt;
::*&amp;lt;i&amp;gt;(If you haven&amp;#039;t installed the subversion package from the cygwin interface, please do so now by re-running the cygwin installer, or if you used lynx and apt-cyg then:)&amp;lt;pre&amp;gt;apt-cyg install subversion&amp;lt;/pre&amp;gt;&amp;lt;/i&amp;gt; &lt;br /&gt;
::*Start with creating a parent directory for the source code: &amp;lt;pre&amp;gt;mkdir /cygdrive/c/source&amp;amp;#10;cd /cygdrive/c/source&amp;lt;/pre&amp;gt;&lt;br /&gt;
::*Check out source from Apache SVN repository&amp;lt;pre&amp;gt;svn co https://svn.apache.org/repos/asf/openoffice/trunk aoo-trunk&amp;amp;#10;cd aoo-trunk/main&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::; Checkout from Gitbox using git (Since 2019-08-03):&lt;br /&gt;
::*&amp;lt;i&amp;gt;(If you haven&amp;#039;t installed the git package from the cygwin interface, please do so now by re-running the cygwin installer, or if you used lynx and apt-cyg then:)&amp;lt;pre&amp;gt;apt-cyg install git&amp;lt;/pre&amp;gt;&amp;lt;/i&amp;gt; &lt;br /&gt;
::*Start with creating a parent directory for the source code: &amp;lt;pre&amp;gt;mkdir /cygdrive/c/source&amp;amp;#10;cd /cygdrive/c/source&amp;lt;/pre&amp;gt;&lt;br /&gt;
::*Check out source from Apache Git repository&amp;lt;pre&amp;gt;git clone https://gitbox.apache.org/repos/asf/openoffice.git aoo&amp;amp;#10;cd aoo/main&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::; Checkout from SVN using git-svn :&lt;br /&gt;
::*&amp;lt;i&amp;gt;(If you haven&amp;#039;t installed git and git-svn from the cygwin interface, please do so now by re-running the cygwin installer, or if you used lynx and apt-cyg then:)&amp;lt;pre&amp;gt;apt-cyg install git git-svn&amp;lt;/pre&amp;gt;&amp;lt;/i&amp;gt;&lt;br /&gt;
::*Get the actual revision number from https://svn.apache.org/viewvc/openoffice/trunk/, e.g. 1234567&lt;br /&gt;
::*Create an empty directory and change to it, e.g.&amp;lt;pre&amp;gt;mkdir /cygdrive/c/source&amp;amp;#10;cd /cygdrive/c/source&amp;lt;/pre&amp;gt;&lt;br /&gt;
::*Check out source from Apache SVN repository&amp;lt;pre&amp;gt;git svn clone --revision 1234567:HEAD https://svn.apache.org/repos/asf/openoffice/trunk&amp;amp;#10;cd trunk/main&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Remember the source path (this is optional, it makes for an easy reference):&amp;lt;pre&amp;gt;SourceMain=`pwd`&amp;lt;/pre&amp;gt; [Why? I have not used it. [[User:Regina|Regina]] ([[User talk:Regina|talk]]) 21:42, 24 February 2013 (UTC)]&lt;br /&gt;
:[Added explanation above [[User:Andre|Andre]]]&lt;br /&gt;
&lt;br /&gt;
* Optional: Get dbghelp.dll (for using the &amp;lt;code&amp;gt;--enable-dbgutil&amp;lt;/code&amp;gt; configure option)&lt;br /&gt;
** This dll is part of MS Visual Studio. If you do not have it installed, download and install &amp;quot;Visual Studio Community&amp;quot; from https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx &lt;br /&gt;
** Copy file to &amp;lt;code&amp;gt;main/external/dbghelp&amp;lt;/code&amp;gt;. Use Windows file manager or in cygwin terminal&amp;lt;pre&amp;gt;cp /cygdrive/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio\ 9.0/Common7/IDE/dbghelp.dll $SourceMain/external/dbghelp&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Copy vcredist_x86.exe and vcredist_x64.exe (see above) to main/external/vcredist.&lt;br /&gt;
** Use Windows file manager or in cygwin terminal&amp;lt;pre&amp;gt;cp &amp;lt;download-location&amp;gt;/vcredist_x86.exe $SourceMain/external/vcredist&amp;amp;#10;cp &amp;lt;download-location&amp;gt;/vcredist_x64.exe $SourceMain/external/vcredist&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Get GDI+ redistributable:&lt;br /&gt;
**Browse to https://www.microsoft.com/en-us/download/details.aspx?id=18909&lt;br /&gt;
**Download [https://web.archive.org/web/20190714055850/http://download.microsoft.com/download/a/b/c/abc45517-97a0-4cee-a362-1957be2f24e1/WindowsXP-KB975337-x86-ENU.exe WindowsXP-KB975337-x86-ENU.exe]&lt;br /&gt;
**Run WindowsXP-KB975337-x86-ENU.exe&lt;br /&gt;
**Enter a temporary path (eg c:\temp\gdiplus) in the dialog and click OK to extract files&lt;br /&gt;
**Copy gdiplus.dll to main/external/gdiplus&amp;lt;pre&amp;gt;cp /cygdrive/c/temp/gdiplus/asms/10/msft/windows/gdiplus/gdiplus.dll $SourceMain/external/gdiplus/&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Remove the temporary path&amp;lt;pre&amp;gt;rm -fr /cygdrive/c/temp/gdiplus&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Get msvcr100.dll:&lt;br /&gt;
**We need the 32-bit dll (version 10.0.40219.325), available from: https://www.microsoft.com/en-US/download/details.aspx?id=26999&amp;lt;pre&amp;gt;cp /cygdrive/c/Windows/System32/msvcr100.dll $SourceMain/external/msvcp100&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Make sure that you are in the main source directory:&amp;lt;pre&amp;gt;cd $SourceMain&amp;lt;/pre&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
* Run autoconf to create the configure script:&amp;lt;pre&amp;gt;autoconf&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Call configure&lt;br /&gt;
** For those paths that do have spaces, use the cygpath tool to get a shortened version without any spaces, which you can then use in the configuration directives without any trouble (adapt paths as necessary):&amp;lt;pre&amp;gt;$ cygpath -m -s &amp;quot;C:\Program Files (x86)\Java\jdk1.8.0_73&amp;quot; &amp;amp;#10;C:/PROGRA~2/Java/JDK18~1.0_7 &amp;amp;#10;$ cygpath -m -s &amp;quot;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC&amp;quot; &amp;amp;#10;C:/PROGRA~2/MI1DCA~1.0/VC&amp;lt;/pre&amp;gt;Run configure (again adapt paths as necessary)&amp;lt;pre&amp;gt;SDK_PATH=&amp;quot;/cygdrive/c/Microsoft_SDKs/Windows/v7.0&amp;quot;&amp;amp;#10;./configure \&amp;amp;#10;    --with-frame-home=&amp;quot;$SDK_PATH&amp;quot; \&amp;amp;#10;    --with-psdk-home=&amp;quot;$SDK_PATH&amp;quot; \&amp;amp;#10;    --with-midl-path=&amp;quot;$SDK_PATH/bin&amp;quot; \&amp;amp;#10;    --with-ant-home=&amp;quot;/cygdrive/c/apache-ant-1.9.15&amp;quot; \&amp;amp;#10;    --with-jdk-home=&amp;quot;C:/PROGRA~2/Java/JDK18~1.0_7&amp;quot; \&amp;amp;#10;    --with-csc-path=&amp;quot;C:/Windows/Microsoft.NET/Framework/v3.5&amp;quot; \&amp;amp;#10;    --with-cl-home=&amp;quot;C:/PROGRA~2/MI1DCA~1.0/VC&amp;quot; \&amp;amp;#10;    --with-asm-home=&amp;quot;C:/PROGRA~2/MI1DCA~1.0/VC/bin&amp;quot; \&amp;amp;#10;    --with-dmake-url=&amp;quot;https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&amp;quot; \&amp;amp;#10;    --disable-pch \&amp;amp;#10;    --disable-atl \&amp;amp;#10;    --disable-activex \&amp;amp;#10;    --disable-nss-module \&amp;amp;#10;    --without-junit&amp;lt;/pre&amp;gt;If you have installed the optional DirectX SDK then you can add the switch:&amp;lt;pre&amp;gt;    --with-directx-home=&amp;quot;C:/Microsoft_DirectX_SDK_June_2010&amp;quot;&amp;lt;/pre&amp;gt;If you have installed Windows Driver Kit 7.1.0 and would like to build with ATL and ActiveX functionality then remove the &amp;lt;code&amp;gt;--disable-activex&amp;lt;/code&amp;gt; and the &amp;lt;code&amp;gt;--disable-atl&amp;lt;/code&amp;gt; directives, and add the atl home directives: &amp;lt;pre&amp;gt;    --with-atl-include-dir=/cygdrive/c/WinDDK/7600.16385.1/inc/atl71 \&amp;amp;#10;    --with-atl-lib-dir=/cygdrive/c/WinDDK/7600.16385.1/lib/ATL/i386 \&amp;amp;#10;    --with-mfc-include-dir=/cygdrive/c/WinDDK/7600.16385.1/inc/mfc42 \&amp;amp;#10;    --with-mfc-lib-dir=/cygdrive/c/WinDDK/7600.16385.1/lib/Mfc/i386&amp;lt;/pre&amp;gt;If you have installed NSIS you can use the relative directive &amp;lt;pre&amp;gt;    --with-nsis-path=&amp;quot;C:/NSIS&amp;quot;&amp;lt;/pre&amp;gt;If you have installed MozillaBuild tools you can use the relative switch:&amp;lt;pre&amp;gt;    --with-mozilla-build=&amp;quot;/cygdrive/d/mozilla-build&amp;quot;&amp;lt;/pre&amp;gt;You may also enable a few more switches (used for official releases: --enable-win-x64-shellext):&amp;lt;pre&amp;gt;    --enable-win-x64-shellext \&amp;amp;#10;    --enable-wiki-publisher \&amp;amp;#10;    --enable-category-b \&amp;amp;#10;    --enable-bundled-dictionaries&amp;lt;/pre&amp;gt;and if you would like to build for different locales you can use the lang switch (in this example, for English United States and for Italian):&amp;lt;pre&amp;gt;    --with-lang=&amp;quot;en-US it&amp;quot;&amp;lt;/pre&amp;gt;If you have copied over the dbghelp.dll and would like these extra features you can enable the debug switch:&amp;lt;pre&amp;gt;    --enable-dbgutil&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Finish configuration and download missing external source tarballs and extensions&amp;lt;pre&amp;gt;./bootstrap&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Include the configured environment&amp;lt;pre&amp;gt;source winenv.set.sh&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Build&amp;lt;pre&amp;gt;cd instsetoo_native/&amp;amp;#10;build --all&amp;lt;/pre&amp;gt;Depending on your computer this will take one or more hours to finish. You may want to experiment with the -P options for multi process builds to reduce the build time. &amp;lt;pre&amp;gt;build --all -P&amp;lt;m&amp;gt; -- -P&amp;lt;n&amp;gt;&amp;lt;/pre&amp;gt; tells build to use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; processes (build up to &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; modules in parallel) and &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; threads for each module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Install&amp;lt;br/&amp;gt;There are three options:&lt;br /&gt;
*# Regular install with integration into Windows.&amp;lt;br/&amp;gt;This allows only one instance of AOO to be installed.&lt;br /&gt;
*#* Start setup.exe and click through dialog:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;$SourceMain/instsetoo_native/wntmsci12.pro/OpenOffice/msi/install/en-US/setup.exe&amp;lt;/pre&amp;gt;&lt;br /&gt;
*#* Apache OpenOffice can be started via the Windows start menu.&lt;br /&gt;
*# Install without integration into Windows.&amp;lt;br/&amp;gt;This allows several instance of AOO, based on the same version, to be installed side by side.&amp;lt;br/&amp;gt;It still requires Administrator permissions.&lt;br /&gt;
*#* Start &amp;lt;code&amp;gt;setup.exe&amp;lt;/code&amp;gt; with option &amp;lt;code&amp;gt;-a&amp;lt;/code&amp;gt;:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;$SourceMain/instsetoo_native/wntmsci12.pro/OpenOffice/msi/install/en-US/setup.exe -a&amp;lt;/pre&amp;gt;&lt;br /&gt;
*#* Enter an installation path into the dialog and click through the dialog to finish installation.&lt;br /&gt;
*#* Start AOO by running&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;installation-path&amp;gt;/program/soffice.exe&amp;lt;/pre&amp;gt;&lt;br /&gt;
*# Unpack archive without installation.&amp;lt;br/&amp;gt;This does not require Administrator permissions&lt;br /&gt;
*#* Go to installation directory:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;cd &amp;lt;installation-target&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
*#* Unzip archive:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;unzip $SourceMain/instsetoo_native/wntmsci12.pro/Apache_OpenOffice/msi/install/en-US/Apache_OpenOffice_4.1.4_Win_x86_install-arc_en-US.zip&amp;lt;/pre&amp;gt;&lt;br /&gt;
*#* Start AOO by running:&amp;lt;br/&amp;gt;&amp;lt;pre&amp;gt;./Apache_OpenOffice_4.1.4_Win_x86_install-arc_en-US/program/soffice.exe&amp;lt;/pre&amp;gt;&lt;br /&gt;
::: (Change the version number in the file name to match the version you built)&lt;br /&gt;
&lt;br /&gt;
== Build with Cygwin 64-bit ==&lt;br /&gt;
&lt;br /&gt;
{{Note | Building AOO with Cygwin 64-bit will only work with trunk and the 4.2.x branch, it will &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; work with any 4.1.x branch!}} &lt;br /&gt;
&lt;br /&gt;
* Install Cygwin, &amp;#039;&amp;#039;&amp;#039;64-bit version&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** Browse to [https://www.cygwin.com https://www.cygwin.com] and click on the setup-x86_64.exe link to download the 64-bit version (the latest Cygwin DLL known to work is 3.1.7-1) or use [https://www.cygwin.com/setup-x86_64.exe this direct link]. Note: For some older revisions &amp;quot;make&amp;quot; has to be downgraded to version 4.2.1-2 to build AOO from trunk or AOO42X.&lt;br /&gt;
** Run the installer and click through the questions&lt;br /&gt;
** On the &amp;quot;Choose A Download Site&amp;quot; select a nearby download server&lt;br /&gt;
** Expect a &amp;quot;Setup Alert&amp;quot; dialog box on the first cygwin install on the computer: click OK to close it&lt;br /&gt;
** On the page that allows you to select additional packages select: &amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt; From the &amp;#039;&amp;#039;&amp;#039;Archive&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;zip, unzip&amp;lt;/pre&amp;gt; From the &amp;#039;&amp;#039;&amp;#039;Devel&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;autoconf, gperf, gcc-g++, bison, flex, patch, git, make&amp;lt;/pre&amp;gt; From the &amp;#039;&amp;#039;&amp;#039;Net&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;rsync&amp;lt;/pre&amp;gt;From the &amp;#039;&amp;#039;&amp;#039;Perl&amp;#039;&amp;#039;&amp;#039; category: &amp;lt;pre&amp;gt;perl, perl-XML-SAX-Expat, perl-Archive-Zip, perl-LWP-Protocol-https, perl-XML-parser, perl-libwww-perl, perl-Digest-SHA, perl-Net-SSLeay&amp;lt;/pre&amp;gt;As a shortcut you can install everything needed with one command:&amp;lt;pre&amp;gt;setup-x86_64.exe -P zip -P unzip -P autoconf -P gperf -P gcc-g++ -P bison -P flex -P patch -P git -P make -P rsync -P perl -P perl-XML-SAX-Expat -P perl-Archive-Zip -P perl-LWP-Protocol-https -P perl-XML-parser -P perl-libwww-perl -P perl-Digest-SHA -P perl-Net-SSLeay&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Click Next to finish package selection.&lt;br /&gt;
** Click Next to resolve dependencies.&lt;br /&gt;
** After installation is finished click the Finish button to close the dialog.&lt;br /&gt;
&lt;br /&gt;
* Start Cygwin bash in a terminal and follow all the steps for 32-bit Cygwin up to and including &amp;#039;./configure&amp;#039; with relative parameters&lt;br /&gt;
** Finish configuration and download missing external source tarballs and extensions&amp;lt;pre&amp;gt;./bootstrap&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Include the configured environment&amp;lt;pre&amp;gt;source winenv.set.sh&amp;lt;/pre&amp;gt;&lt;br /&gt;
** Build&amp;lt;pre&amp;gt;cd instsetoo_native/&amp;amp;#10;build --all&amp;lt;/pre&amp;gt;Depending on your computer this will take one or more hours to finish. You may want to experiment with the -P options for multi process builds to reduce the build time. &amp;lt;pre&amp;gt;build --all -P&amp;lt;m&amp;gt; -- -P&amp;lt;n&amp;gt;&amp;lt;/pre&amp;gt; tells build to use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; processes (build up to &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; modules in parallel) and &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; threads for each module.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO&amp;diff=247549</id>
		<title>Documentation/Building Guide AOO</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO&amp;diff=247549"/>
		<updated>2021-01-30T20:01:05Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Configuration and bootstrapping */ mention non product build (checkpoint save)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Apache OpenOffice Building Guide}}&lt;br /&gt;
&lt;br /&gt;
= Preface =&lt;br /&gt;
This guide will help you to build Apache OpenOffice from its source code.  It details the prerequisites and explains how to download the source code, prepare and then run the build. [[Documentation/Building_Guide_AOO/Step_by_step|Step-by-step instructions]] for resolving the pre-requisites of individual platforms and building on them are available.&lt;br /&gt;
&lt;br /&gt;
These instructions are for the &amp;quot;&amp;#039;&amp;#039;&amp;#039;trunk&amp;#039;&amp;#039;&amp;#039;&amp;quot; branch, that is the current development release. If you are looking for instructions to build specific releases, refer to section [[#Step-by-Step Building Guide for Different Platforms]] as well.&lt;br /&gt;
  &lt;br /&gt;
Here is the short version for the brave and impatient:&lt;br /&gt;
# &amp;lt;code&amp;gt;git clone https://gitbox.apache.org/repos/asf/openoffice.git&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;or&amp;lt;br /&amp;gt;&amp;lt;code&amp;gt;git clone https://github.com/apache/openoffice.git&amp;lt;/code&amp;gt;&lt;br /&gt;
# Configure: &amp;lt;code&amp;gt;cd main/ ; autoconf ; ./configure &amp;lt;some-switches&amp;gt; ; ./bootstrap&amp;lt;/code&amp;gt;&lt;br /&gt;
# Build: &amp;lt;code&amp;gt;source &amp;lt;platform-dependend-name&amp;gt;.sh ; cd instsetoo_native ; build --all&amp;lt;/code&amp;gt;&lt;br /&gt;
# Wait for an hour or more (The build can take up to 3 hours.)&lt;br /&gt;
# Enjoy&lt;br /&gt;
&lt;br /&gt;
The compilation can be automated by the [http://svn.apache.org/viewvc/openoffice/devtools/build-scripts build scripts].&lt;br /&gt;
&lt;br /&gt;
The detailed description below gives a broader introduction into the build process and explains for the various steps.&lt;br /&gt;
 &lt;br /&gt;
{{Note|This document is loosely based on an older [[Documentation/Building Guide|version]].  I have tried to avoid duplication and to move anything that all platforms have in common to this page.  Many details have been removed on purpose because they refer to older version of OpenOffice.}}&lt;br /&gt;
* How to use cache&lt;br /&gt;
&lt;br /&gt;
{{SeeAlso|EN|*[[How_to_build_Symphony%27s_source_code]] }}&lt;br /&gt;
&lt;br /&gt;
= Getting help =&lt;br /&gt;
You can get help by searching this wiki or by asking questions on the [http://openoffice.apache.org/mailing-lists.html#development-mailing-list-public developers mailing list].&lt;br /&gt;
&lt;br /&gt;
You can help us improve this guide by pointing out any errors (preferably after finding a solution).&lt;br /&gt;
Or don&amp;#039;t be shy and edit (and improve) these pages yourself.&lt;br /&gt;
&lt;br /&gt;
= Basics =&lt;br /&gt;
&lt;br /&gt;
In order to build Apache OpenOffice you need a proper environment.  This includes&lt;br /&gt;
* a command line interpreter, typically bourne shell compatible (sh or bash) inside a terminal. On Windows you will need to install Cygwin to provide it.&lt;br /&gt;
* C++ compiler and linker.  The exact choice depends on the operating system.&lt;br /&gt;
* Perl interpreter and several modules.&lt;br /&gt;
* Many tools from the Unix world like make or sed.&lt;br /&gt;
&lt;br /&gt;
See section [[#General_Build_Requirements | General Build Requirements]]&lt;br /&gt;
for an exact list of requirements.&lt;br /&gt;
&lt;br /&gt;
= Getting the source =&lt;br /&gt;
&lt;br /&gt;
Since August 2019, the source code is available as Git repository at https://gitbox.apache.org/repos/asf/openoffice.git, or https://github.com/apache/openoffice.&lt;br /&gt;
&lt;br /&gt;
Check it out with&lt;br /&gt;
&lt;br /&gt;
   git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
or&lt;br /&gt;
   git clone https://github.com/apache/openoffice.git&lt;br /&gt;
&lt;br /&gt;
Git is the preferred way for developers to obtain the source code. After cloning the repository as described above, you will be able to track the current development branches and also quickly switch to the latest official releases (&amp;quot;tags&amp;quot;). For example, to check out the source code for {{AOO}} 4.1.8 issue the command:&lt;br /&gt;
&lt;br /&gt;
   git checkout tags/AOO418-GA&lt;br /&gt;
&lt;br /&gt;
If a full-blown repository clone is not necessary, for example because you just want to download and build a specific release, more details about how to check out source code can be found [http://openoffice.apache.org/source.html here].&lt;br /&gt;
&lt;br /&gt;
== Space Requirements ==&lt;br /&gt;
&lt;br /&gt;
The checked out files take up somewhat over 5GB on disk (more than 150000 files in more than 7000 folders and the version control overhead). &lt;br /&gt;
&lt;br /&gt;
After building this becomes (on Windows7) almost 17GB (more than 406000 files in more than 23000 folders).&lt;br /&gt;
&lt;br /&gt;
= Organization of the source and output tree =&lt;br /&gt;
&lt;br /&gt;
The source code has five top level directories:&lt;br /&gt;
;main/:contains most of the so called modules.  Each module typically provides one or more libraries. The source code of the writer application for example can be found in &amp;lt;code&amp;gt;main/sw/&amp;lt;/code&amp;gt;. More information on the organization of the modules in the source code directories [[Source_code_directories | here]].&lt;br /&gt;
;test/:contains the new [[QA/test_automation_guide | automated testing framework]]&lt;br /&gt;
;ext_libraries/:is the new home of modules that build external libraries (libraries maintained outside of Apache OpenOffice and often outside Apache).&lt;br /&gt;
;ext_sources/:contains the tar balls (archives) of external libraries.  They are included both for convenience and to make sure that specific versions remain available.  Note that the source package of the Apache OpenOffice release does not contain any external tar balls. &lt;br /&gt;
;extras/:holds the localization data.&lt;br /&gt;
&lt;br /&gt;
Most tools and scripts that are used for building are located below &amp;lt;code&amp;gt;main/solenv/&amp;lt;/code&amp;gt;:&lt;br /&gt;
*dmake makefiles in &amp;lt;code&amp;gt;main/solenv/inc/&amp;lt;/code&amp;gt;&lt;br /&gt;
*gmake makefiles in &amp;lt;code&amp;gt;main/solenv/gbuild/&amp;lt;/code&amp;gt;&lt;br /&gt;
*executables and perl files in &amp;lt;code&amp;gt;main/solenv/bin/&amp;lt;/code&amp;gt;&lt;br /&gt;
*perl modules in &amp;lt;code&amp;gt;main/bin/modules/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Libraries and other output files that are shared between modules are stored in &amp;lt;code&amp;gt;main/solver/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Building=&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
&lt;br /&gt;
Building Apache OpenOffice consists of three steps:&lt;br /&gt;
;Configuring/bootstrapping:Detect platform, operating system, compiler, etc. and write the information into a shell script for later use.  The developer can turn on or off certain features in this phase.&lt;br /&gt;
;Building:Compile the source code, transform other input files, apply localization.&lt;br /&gt;
;Packing:Create a set of files, the installation set, that can be installed on the respective operating system.  This can be msi/cab files for windows, deb or rpm for Linux, dmg for Mac.&lt;br /&gt;
&lt;br /&gt;
The configure step has to be carried out only once.  Building and packing is necessary after every source code change.  There are short cuts to avoid parts of these steps (when you know what you are doing.)&lt;br /&gt;
&lt;br /&gt;
The building examples in this wiki document use only command line approaches to building. Depending on your expertise, it may be possible to use an IDE which allows specification of custom build scripts.&lt;br /&gt;
&lt;br /&gt;
Official releases are built using [http://svn.apache.org/viewvc/openoffice/devtools/build-scripts build scripts] to automate the process.&lt;br /&gt;
&lt;br /&gt;
== General Build Requirements ==&lt;br /&gt;
&lt;br /&gt;
The general requirements for all platforms are&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
! Requirement&lt;br /&gt;
! Description&lt;br /&gt;
! Configure switch&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Java JDK&lt;br /&gt;
| Java Implementation compatible with [http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html JDK 1.7] or  higher. [http://openjdk.java.net/ OpenJDK] is supported as well.&lt;br /&gt;
For Windows [http://www.oracle.com/technetwork/java/javase/downloads/index.html/ JDK 1.7] or JDK 1.8 is recommended.&lt;br /&gt;
The JDK&amp;#039;s bitness must match the target platform&amp;#039;s, eg. when building for Win32, use a 32 bit JDK even if compiling on Win64.&lt;br /&gt;
| --with-jdk-home=&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Perl&lt;br /&gt;
| Perl 5 - note: for Windows Perl will be installed as part of the cygwin environment.&lt;br /&gt;
&lt;br /&gt;
Also required are the perl packages&lt;br /&gt;
&lt;br /&gt;
* Archive::Zip&lt;br /&gt;
* XML::Parser&lt;br /&gt;
* LWP::UserAgent&lt;br /&gt;
* Digest::SHA&lt;br /&gt;
* Digest::MD5&lt;br /&gt;
* LWP::Protocol::https&lt;br /&gt;
&lt;br /&gt;
On Linux, use whenever possible your package manager to install the required modules. On Windows, use cygwin&amp;#039;s setup-x86.exe or setup-x86_64.exe.&lt;br /&gt;
&lt;br /&gt;
The name of packages varies depending on the system:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Perl Module &lt;br /&gt;
! CentOS/Fedora&lt;br /&gt;
! Debian/Ubuntu&lt;br /&gt;
! Windows/cygwin&lt;br /&gt;
|-&lt;br /&gt;
| Archive::Zip&lt;br /&gt;
| perl-Archive-Zip&lt;br /&gt;
| libarchive-zip-perl&lt;br /&gt;
| perl-Archive-Zip&lt;br /&gt;
|-&lt;br /&gt;
| XML::Parser&lt;br /&gt;
| perl-XML-Parser&lt;br /&gt;
| libxml-parser-perl&lt;br /&gt;
| perl-XML-Parser&lt;br /&gt;
|-&lt;br /&gt;
| LWP::UserAgent&lt;br /&gt;
| perl-libwww-perl&lt;br /&gt;
| libwww-perl&lt;br /&gt;
| perl-libwww-perl&lt;br /&gt;
|-&lt;br /&gt;
| Digest::SHA&lt;br /&gt;
| perl-Digest-SHA&lt;br /&gt;
| perl&lt;br /&gt;
| perl-Digest-SHA&lt;br /&gt;
|-&lt;br /&gt;
| Digest::MD5&lt;br /&gt;
| perl-Digest-MD5&lt;br /&gt;
| perl&lt;br /&gt;
| perl&lt;br /&gt;
|-&lt;br /&gt;
| LWP::Protocol::https&lt;br /&gt;
| perl-LWP-Protocol-https&lt;br /&gt;
| liblwp-protocol-https-perl&lt;br /&gt;
| perl-LWP-Protocol-https&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
On some rather old systems, &amp;#039;&amp;#039;LWP::Protocol::https&amp;#039;&amp;#039; is installed in the same package as &amp;#039;&amp;#039;LWP::UserAgent&amp;#039;&amp;#039;; in this case, you need to install further dependencies in order to use &amp;#039;&amp;#039;LWP::UserAgent&amp;#039;&amp;#039; with the HTTPS protocol with no errors; on CentOS 5, for example, you need to install the &amp;#039;&amp;#039;Crypt::SSLeay&amp;#039;&amp;#039; module, provided by the &amp;#039;&amp;#039;perl-Crypt-SSLeay&amp;#039;&amp;#039; package.&lt;br /&gt;
&lt;br /&gt;
On Mac OS X, bootstrap may fail to download external dependencies from HTTPS URLs (you may get an error with a message like &amp;quot;Can&amp;#039;t verify SSL peers without knowing which Certificate Authorities to trust&amp;quot;), even if configure found all required modules; in this case, install the &amp;#039;&amp;#039;Mozilla::CA&amp;#039;&amp;#039; module using cpan.&lt;br /&gt;
&lt;br /&gt;
On CentOS, &amp;#039;&amp;#039;perl-Digest-SHA&amp;#039;&amp;#039; might be only provided through the EPEL repository.&lt;br /&gt;
&lt;br /&gt;
The prefered way to install Perl modules is using your system&amp;#039;s package manager; alternatively, and as last resort, Perl modules can be installed from the shell with (you may have to run it with super user/administrator rights)&lt;br /&gt;
    perl -MCPAN -e shell&lt;br /&gt;
If it is executed for the first time then CPAN will ask for configuration. Choose autoconfiguration.&lt;br /&gt;
Eventually the CPAN shell appears accepts commands.  Install missing modules with &lt;br /&gt;
    install &amp;lt;module-name&amp;gt;&lt;br /&gt;
Find more details [https://wiki.openoffice.org/wiki/CPAN_install here].&amp;lt;sup&amp;gt;5&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| CUPS&lt;br /&gt;
| cups headers. Provided by a cups-devel package or a libcups2-devel&lt;br /&gt;
&lt;br /&gt;
note: not for Windows&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| PAM&lt;br /&gt;
| PAM support. Provided by a pam-devel package or a libpam-dev&lt;br /&gt;
&lt;br /&gt;
note: not for Windows&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Apache Ant &lt;br /&gt;
| [http://ant.apache.org/ Ant 1.9 or later] (see note)&lt;br /&gt;
| --with-ant-home=&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Archiver&lt;br /&gt;
| zip and unzip - note: for Windows zip and unzip will be installed as part of the cygwin environment.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| gperf&lt;br /&gt;
| [http://www.gnu.org/software/gperf/gperf.html gperf] tool - note: for Windows gperf will be installed as part of the cygwin environment.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| NSS&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
| For Windows the MozillaBuild tools&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; are needed to build the NSS module. MozillaBuild tools version 3.0 or newer require a 64-bit Windows. When building on 32-bit Windows it is recommended to use version 2.2.0. They can be obtained [https://ftp.mozilla.org/pub/mozilla/libraries/win32/ here].&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| unowinreg.dll&lt;br /&gt;
| [https://tools.openoffice.org/unowinreg_prebuild/680/ pre-built unowinreg.dll] (see NOTE)&lt;br /&gt;
Required for building the ODK which is included in the build unless disabled. This file is required for non-Windows builds. Without this file, configure will try to set up cross-compiling with windows. &lt;br /&gt;
NOTE: Not for windows. Required on all non-windows platforms. Download by directly saving unowinreg.dll into /main/external/unowinreg from the link provided above, or by using wget:&lt;br /&gt;
    cd $SRC/main &amp;amp;&amp;amp;  wget -O external/unowinreg/unowinreg.dll https://tools.openoffice.org/unowinreg_prebuild/680/unowinreg.dll&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Notes:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# The NSS module (&amp;quot;Network Security Services&amp;quot;) provides security services needed for e.g. password protection. NSS can be disabled using the configure switch &amp;lt;tt&amp;gt;--disable-nss-module&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# NSS is provided by the Mozilla project. Building it on Windows requires the [https://ftp.mozilla.org/pub/mozilla/libraries/win32/ MozillaBuild tools]. Install it and use the configure switch &amp;lt;tt&amp;gt;--with-mozilla-build&amp;lt;/tt&amp;gt; to tell configure where the tools are installed. For example: &amp;lt;tt&amp;gt;--with-mozilla-build=c:/mozilla-build&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Please note that CPAN is not able to deal with usernames containing spaces. To work around this fact, when CPAN asks you to specify the CPAN build and cache directory, change the default suggestion to /cpan.&lt;br /&gt;
# Apache Ant: Assure a proper ant set-up by downloading and installing ant, in total, from the ant site linked above. If you are a Linux developer, your distro may not have ant setup correctly for building Apache OpenOffice.&lt;br /&gt;
# Use &amp;lt;tt&amp;gt;./configure --help&amp;lt;/tt&amp;gt; to see all possible configuration options&lt;br /&gt;
&lt;br /&gt;
See also the platform specific requirements for&lt;br /&gt;
*[[Documentation/Building_Guide_AOO/Building_on_Windows|Windows]]&lt;br /&gt;
*[[Documentation/Building_Guide_AOO/Building_on_Linux|Linux]]&lt;br /&gt;
*[[Documentation/Building_Guide_AOO/Building_on_MacOsX|MacOSX]]&lt;br /&gt;
&lt;br /&gt;
==Configuration and bootstrapping==&lt;br /&gt;
This is typically done only once after the source code is checked out.  Repeat this after changing your mind about options given to configure.&lt;br /&gt;
&lt;br /&gt;
The call to&lt;br /&gt;
   autoconf&lt;br /&gt;
creates the main/configure script from main/configure.in and some other input files.&lt;br /&gt;
&lt;br /&gt;
The set of options/switches given to configure depends on the platform and your choice of features. To see all configure options for your system, type:&lt;br /&gt;
  configure --help&lt;br /&gt;
&lt;br /&gt;
A typical configuration call starts like this --&lt;br /&gt;
    ./configure \&lt;br /&gt;
        --with-dmake-url=https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz \&lt;br /&gt;
        --with-epm-url=https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
It tells configure where to find the source code of external tools dmake and epm.&lt;br /&gt;
&lt;br /&gt;
By default only source code under [http://www.apache.org/legal/3party.html#category-a category A] licenses is compiled and included.  Besides the Apache License 2.0 this includes for example BSD and MIT/X11 license.  If you want to enable features that rely on third party code under [http://www.apache.org/legal/3party.html#category-b category B] licenses (like MPL, CPL, EPL, etc) then add the option&lt;br /&gt;
        --enable-category-b&lt;br /&gt;
&lt;br /&gt;
For inclusion of externally hosted dictionary extensions add option&lt;br /&gt;
        --enable-bundled-dictionaries&lt;br /&gt;
Note that dictionaries rely on a category B third party library (hunspell). Therefore &amp;lt;code&amp;gt;--enable-category-b&amp;lt;/code&amp;gt; is a prerequisite for &amp;lt;code&amp;gt;--enable-bundled-dictionaries&amp;lt;/code&amp;gt;. Dictionaries have a variety of licenses and are bundled without modification: they are not compiled.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;--with-lang&amp;lt;/code&amp;gt; option will introduce the build of additional language resources. This switch accepts one or more RFC 1766 language tags as arguments, unfortunately not all languages are supported. Check the &amp;lt;code&amp;gt;[https://github.com/apache/openoffice/blob/trunk/main/solenv/inc/langlist.mk solenv/inc/langlist.mk]&amp;lt;/code&amp;gt; file for all the currently supported language tags. The environment variable WITH_LANG will then contain the language tags of the additional (en-US will always be build) languages. Example:&lt;br /&gt;
        --with-lang=&amp;quot;de fr&amp;quot;&lt;br /&gt;
enables the build of the localized German and French version.&lt;br /&gt;
&lt;br /&gt;
To build with symbolic generation, add option&lt;br /&gt;
        --enable-symbols&lt;br /&gt;
This would allow you to work with debugging symbols in gdb.&lt;br /&gt;
&lt;br /&gt;
Another useful option for interactive debugging features is dbgutil. Add option,&lt;br /&gt;
        --enable-dbgutil&lt;br /&gt;
for this feature. This will result in a [[Non Product Build]]. Also see the Debugging information on this page. &lt;br /&gt;
&lt;br /&gt;
By default the result binaries will be packaged in the default format used by your OS/Distribution. Using &amp;#039;installed&amp;#039; for package format puts OpenOffice into your &amp;#039;&amp;#039;installset&amp;#039;&amp;#039; directory (browse down ../installed/install). This will save you time for testing since you can then directly run OpenOffice from this area. &lt;br /&gt;
&lt;br /&gt;
Add option&lt;br /&gt;
        --with-package-format=&amp;quot;installed&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This will speed up development process since it skipped packaging. In some cases, packaging rips the debugging symbol so this would be necessary for symbolic generation. &amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; Additional package format options will be ignored with the &amp;quot;installed&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can run the rat scan while building with option&lt;br /&gt;
         --with-rat-scan&lt;br /&gt;
[[Documentation/Building_Guide_AOO/Rat_Scan|Here]] you can find details of the rat scan.&lt;br /&gt;
&lt;br /&gt;
Finish this step by running&lt;br /&gt;
    ./bootstrap&lt;br /&gt;
This will build dmake and epm, download missing source code tar balls of external libraries, and download missing external dictionary extensions.&lt;br /&gt;
&lt;br /&gt;
==Building==&lt;br /&gt;
Start by including the environment variables prepared by configure into your current environment with&lt;br /&gt;
   &amp;lt;tt&amp;gt;source &amp;lt;shell-script-name&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
where &amp;lt;shell-script-name&amp;gt; depends on your platform:&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!platform id&lt;br /&gt;
!&amp;lt;shell-script-name&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| wntmsci12&lt;br /&gt;
| winenv.set.sh&lt;br /&gt;
|-&lt;br /&gt;
| unxlngi6&lt;br /&gt;
| LinuxX86Env.Set.sh&lt;br /&gt;
|-&lt;br /&gt;
| unxlngx6&lt;br /&gt;
| LinuxX86-64Env.Set.sh&lt;br /&gt;
|-&lt;br /&gt;
| unxmacci&lt;br /&gt;
| MacOSXX64Env.Set.sh&lt;br /&gt;
|}&lt;br /&gt;
Look into main/set_soenv for more platforms. (search for lines &amp;lt;code&amp;gt;$OUTPATH = &amp;quot;&amp;lt;platform&amp;gt;&amp;quot;;&amp;lt;/code&amp;gt; and the nearby line &amp;lt;code&amp;gt;$outfile = &amp;quot;&amp;lt;shell-script-name&amp;gt;&amp;quot;;&amp;lt;/code&amp;gt;.  Add the suffix &amp;lt;code&amp;gt;.sh&amp;lt;/code&amp;gt; for the bash variant.&lt;br /&gt;
&lt;br /&gt;
If you want to build the whole office and the install sets then&lt;br /&gt;
    cd main/instsetoo_native&lt;br /&gt;
    build --all&lt;br /&gt;
You may want to experiment with the -P options for multi process builds to reduce the build time.&lt;br /&gt;
    build --all -P&amp;lt;m&amp;gt; -- -P&amp;lt;n&amp;gt;&lt;br /&gt;
tells build to use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; processes (build up to &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; modules in parallel) and &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; threads for each module.&lt;br /&gt;
&lt;br /&gt;
Details about creating installation sets can be found [[Building_installation_packages|here]].&lt;br /&gt;
&lt;br /&gt;
Building Apache OpenOffice uses a custom build command, build.pl, located in /main/solenv/bin.&lt;br /&gt;
You may find it helpful to learn more about build options from the [http://www.openoffice.org/tools/tools/build.html Build Documentation]&lt;br /&gt;
&lt;br /&gt;
==Partial Builds==&lt;br /&gt;
&lt;br /&gt;
Building the whole office takes a lot of time.  Therefore it may be preferable to build only parts after making changes to the source code.&lt;br /&gt;
There are two different types of partial builds:&lt;br /&gt;
;Compatible:Can be used only when the code changes do not change exported interfaces. Use with care and only when you know what you are doing.&lt;br /&gt;
;Incompatible:Use for code changes that modify exported C++ or IDL interfaces, that modify resources that are used by other modules, or when you are not sure.&lt;br /&gt;
:If you are a new developer, you should probably always assume your changes are &amp;quot;incompatible&amp;quot; and follow the instructions for &amp;#039;&amp;#039;&amp;#039;Incompatible Build&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
===Make Systems Used by Apache OpenOffice===&lt;br /&gt;
&lt;br /&gt;
For the following Build sections you should be aware that Apache OpenOffice uses two different &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; systems to build its modules.&lt;br /&gt;
*The older one is based on dmake&lt;br /&gt;
*The other and newer one is based on GNU make.  This system is often referred to as gbuild.&lt;br /&gt;
When a module contains, among others, a Makefile and a Module_&amp;lt;module&amp;gt;.mk file then it is a gbuild module.&lt;br /&gt;
&lt;br /&gt;
===Compatible Build===&lt;br /&gt;
&lt;br /&gt;
After changing code in module &amp;lt;module&amp;gt; which does not change any exported interfaces do&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|  &lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build&lt;br /&gt;
    deliver&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make -sr&lt;br /&gt;
No explicit call to &amp;lt;code&amp;gt;deliver&amp;lt;/code&amp;gt; is necessary for gbuild modules.&lt;br /&gt;
|}&lt;br /&gt;
to compile and deliver the resulting libraries to &amp;lt;code&amp;gt;main/solver/&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
You may want to erase the output of a previous compilation. In some cases a new compilation will not work correctly unless the old output is removed.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|  &lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build --from &amp;lt;module&amp;gt; --prepare&lt;br /&gt;
or faster (but without the un-deliver)&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    rm -fr &amp;lt;platform&amp;gt;/&lt;br /&gt;
| &lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make clean&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Incompatible Build===&lt;br /&gt;
&lt;br /&gt;
Modifications that change exported interfaces require not only the module to be rebuild that contains the modified code.  All depending modules (dependencies are defined in &amp;lt;code&amp;gt;&amp;lt;module&amp;gt;/prj/build.lst&amp;lt;/code&amp;gt;) have to be rebuild as well.  This is best done from &amp;lt;code&amp;gt;main/instsetoo_native/&amp;lt;/code&amp;gt;:&lt;br /&gt;
  &amp;lt;tt&amp;gt;cd main/instsetoo_native/&amp;lt;/tt&amp;gt;&lt;br /&gt;
  &amp;lt;tt&amp;gt;build --from &amp;lt;incompatible-module&amp;gt; --prepare&amp;lt;/tt&amp;gt;&lt;br /&gt;
  &amp;lt;tt&amp;gt;build --from &amp;lt;incompatible-module&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second line removes the output of all modules that have to be recompiled. The drawback of this command is that the output of modules which are build via gbuild are not removed. Thus, the following additional command performed after the second one will do the trick:&lt;br /&gt;
  build --from &amp;lt;incompatible-module&amp;gt; --job=&amp;quot;make clean; make clean debug=t&amp;quot; --ignore&lt;br /&gt;
&lt;br /&gt;
===Frequently used options===&lt;br /&gt;
&lt;br /&gt;
In order to add debug information to libraries and executables, add the &amp;lt;code&amp;gt;debug&amp;lt;/code&amp;gt; switch to any &amp;lt;code&amp;gt;build&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; command:&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build debug=t&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make -sr debug=t&lt;br /&gt;
|}&lt;br /&gt;
Remember that for the gbuild system you have to use the debug flag also when cleaning a module (otherwise eg the wrong precompiled headers are deleted and are not rebuilt):&lt;br /&gt;
    make clean debug=t&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can force make to rebuild dependency information by first deleting it with the depend option.  It would be rebuilt automatically with the next build:&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build depend=t&lt;br /&gt;
    build&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make -sr depend=t&lt;br /&gt;
    make -sr&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Build Cleanup==&lt;br /&gt;
In the event that you want to change configuration parameters used for building, you will probably need to &amp;quot;clean&amp;quot; your build output tree before starting again.&lt;br /&gt;
&lt;br /&gt;
To do this, navigate to the &amp;quot;main&amp;quot; directory, then source your environment shell script as you did for building:&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;tt&amp;gt;source &amp;lt;shell-script-name&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
then do:&lt;br /&gt;
&lt;br /&gt;
     dmake clean&lt;br /&gt;
&lt;br /&gt;
=Step-by-Step Building Guide for Different Platforms=&lt;br /&gt;
&lt;br /&gt;
This section is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the other sections of this document.&lt;br /&gt;
&lt;br /&gt;
The guides limit themselves to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step guide for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]]&lt;br /&gt;
&lt;br /&gt;
==[[Documentation/Building Guide AOO/Step by step Linux|Linux]]==&lt;br /&gt;
&lt;br /&gt;
==[[Documentation/Building Guide AOO/Step by step Windows|Windows]]==&lt;br /&gt;
&lt;br /&gt;
==[[Documentation/Building Guide AOO/Building on MacOsX|Mac OS X]]==&lt;br /&gt;
&lt;br /&gt;
= Building Apache OpenOffice with an IDE =&lt;br /&gt;
== [[OpenOffice and Eclipse|Building with Eclipse]] ==&lt;br /&gt;
&lt;br /&gt;
= Additional Build Resources =&lt;br /&gt;
It can be useful to build an older version of {{AOO}} on newer build environments, for example in order to regression test a bug in the latest version.&lt;br /&gt;
&lt;br /&gt;
Older source code may need some integrations, that are described on this page: [[Building old versions]].&lt;br /&gt;
&lt;br /&gt;
== [[Debugging|Debugging]] ==&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=User:Ardovm/QA&amp;diff=247262</id>
		<title>User:Ardovm/QA</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=User:Ardovm/QA&amp;diff=247262"/>
		<updated>2021-01-20T07:42:35Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Notes on release testing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Notes on release testing==&lt;br /&gt;
&lt;br /&gt;
Developer builds:&lt;br /&gt;
* https://www.openoffice.org/qa/testcase/&lt;br /&gt;
* [[QA/test_automation_guide]]&lt;br /&gt;
* [[QA/TestCases/#AOO_3.4_General_Testing_Test_Cases]]&lt;br /&gt;
&lt;br /&gt;
Release candidates:&lt;br /&gt;
* http://www.apache.org/legal/release-policy.html&lt;br /&gt;
* https://s.apache.org/openoffice-416-tests&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247251</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247251"/>
		<updated>2021-01-14T20:13:25Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Obtain the source code */ Pointer to the Building guide&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
This chapter lists the commands for cloning the {{AOO}} Git repository. For information about the possible ways of obtaining the source code, refer to the [[Documentation/Building_Guide_AOO#Getting_the_source | Building Guide]].&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;code&amp;gt;&amp;lt;branch&amp;gt;&amp;lt;/code&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO&amp;diff=247250</id>
		<title>Documentation/Building Guide AOO</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO&amp;diff=247250"/>
		<updated>2021-01-14T20:08:39Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Getting the source */ A little more detail on Git&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Apache OpenOffice Building Guide}}&lt;br /&gt;
&lt;br /&gt;
= Preface =&lt;br /&gt;
This guide will help you to build Apache OpenOffice from its source code.  It details the prerequisites and explains how to download the source code, prepare and then run the build. [[Documentation/Building_Guide_AOO/Step_by_step|Step-by-step instructions]] for resolving the pre-requisites of individual platforms and building on them are available.&lt;br /&gt;
&lt;br /&gt;
These instructions are for the &amp;quot;&amp;#039;&amp;#039;&amp;#039;trunk&amp;#039;&amp;#039;&amp;#039;&amp;quot; branch, that is the current development release. If you are looking for instructions to build specific releases, refer to section [[#Step-by-Step Building Guide for Different Platforms]] as well.&lt;br /&gt;
  &lt;br /&gt;
Here is the short version for the brave and impatient:&lt;br /&gt;
# &amp;lt;code&amp;gt;git clone https://gitbox.apache.org/repos/asf/openoffice.git&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;or&amp;lt;br /&amp;gt;&amp;lt;code&amp;gt;git clone https://github.com/apache/openoffice.git&amp;lt;/code&amp;gt;&lt;br /&gt;
# Configure: &amp;lt;code&amp;gt;cd main/ ; autoconf ; ./configure &amp;lt;some-switches&amp;gt; ; ./bootstrap&amp;lt;/code&amp;gt;&lt;br /&gt;
# Build: &amp;lt;code&amp;gt;source &amp;lt;platform-dependend-name&amp;gt;.sh ; cd instsetoo_native ; build --all&amp;lt;/code&amp;gt;&lt;br /&gt;
# Wait for an hour or more (The build can take up to 3 hours.)&lt;br /&gt;
# Enjoy&lt;br /&gt;
&lt;br /&gt;
The compilation can be automated by the [http://svn.apache.org/viewvc/openoffice/devtools/build-scripts build scripts].&lt;br /&gt;
&lt;br /&gt;
The detailed description below gives a broader introduction into the build process and explains for the various steps.&lt;br /&gt;
 &lt;br /&gt;
{{Note|This document is loosely based on an older [[Documentation/Building Guide|version]].  I have tried to avoid duplication and to move anything that all platforms have in common to this page.  Many details have been removed on purpose because they refer to older version of OpenOffice.}}&lt;br /&gt;
* How to use cache&lt;br /&gt;
&lt;br /&gt;
{{SeeAlso|EN|*[[How_to_build_Symphony%27s_source_code]] }}&lt;br /&gt;
&lt;br /&gt;
= Getting help =&lt;br /&gt;
You can get help by searching this wiki or by asking questions on the [http://openoffice.apache.org/mailing-lists.html#development-mailing-list-public developers mailing list].&lt;br /&gt;
&lt;br /&gt;
You can help us improve this guide by pointing out any errors (preferably after finding a solution).&lt;br /&gt;
Or don&amp;#039;t be shy and edit (and improve) these pages yourself.&lt;br /&gt;
&lt;br /&gt;
= Basics =&lt;br /&gt;
&lt;br /&gt;
In order to build Apache OpenOffice you need a proper environment.  This includes&lt;br /&gt;
* a command line interpreter, typically bourne shell compatible (sh or bash) inside a terminal. On Windows you will need to install Cygwin to provide it.&lt;br /&gt;
* C++ compiler and linker.  The exact choice depends on the operating system.&lt;br /&gt;
* Perl interpreter and several modules.&lt;br /&gt;
* Many tools from the Unix world like make or sed.&lt;br /&gt;
&lt;br /&gt;
See section [[#General_Build_Requirements | General Build Requirements]]&lt;br /&gt;
for an exact list of requirements.&lt;br /&gt;
&lt;br /&gt;
= Getting the source =&lt;br /&gt;
&lt;br /&gt;
Since August 2019, the source code is available as Git repository at https://gitbox.apache.org/repos/asf/openoffice.git, or https://github.com/apache/openoffice.&lt;br /&gt;
&lt;br /&gt;
Check it out with&lt;br /&gt;
&lt;br /&gt;
   git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
or&lt;br /&gt;
   git clone https://github.com/apache/openoffice.git&lt;br /&gt;
&lt;br /&gt;
Git is the preferred way for developers to obtain the source code. After cloning the repository as described above, you will be able to track the current development branches and also quickly switch to the latest official releases (&amp;quot;tags&amp;quot;). For example, to check out the source code for {{AOO}} 4.1.8 issue the command:&lt;br /&gt;
&lt;br /&gt;
   git checkout tags/AOO418-GA&lt;br /&gt;
&lt;br /&gt;
If a full-blown repository clone is not necessary, for example because you just want to download and build a specific release, more details about how to check out source code can be found [http://openoffice.apache.org/source.html here].&lt;br /&gt;
&lt;br /&gt;
== Space Requirements ==&lt;br /&gt;
&lt;br /&gt;
The checked out files take up somewhat over 5GB on disk (more than 150000 files in more than 7000 folders and the version control overhead). &lt;br /&gt;
&lt;br /&gt;
After building this becomes (on Windows7) almost 17GB (more than 406000 files in more than 23000 folders).&lt;br /&gt;
&lt;br /&gt;
= Organization of the source and output tree =&lt;br /&gt;
&lt;br /&gt;
The source code has five top level directories:&lt;br /&gt;
;main/:contains most of the so called modules.  Each module typically provides one or more libraries. The source code of the writer application for example can be found in &amp;lt;code&amp;gt;main/sw/&amp;lt;/code&amp;gt;. More information on the organization of the modules in the source code directories [[Source_code_directories | here]].&lt;br /&gt;
;test/:contains the new [[QA/test_automation_guide | automated testing framework]]&lt;br /&gt;
;ext_libraries/:is the new home of modules that build external libraries (libraries maintained outside of Apache OpenOffice and often outside Apache).&lt;br /&gt;
;ext_sources/:contains the tar balls (archives) of external libraries.  They are included both for convenience and to make sure that specific versions remain available.  Note that the source package of the Apache OpenOffice release does not contain any external tar balls. &lt;br /&gt;
;extras/:holds the localization data.&lt;br /&gt;
&lt;br /&gt;
Most tools and scripts that are used for building are located below &amp;lt;code&amp;gt;main/solenv/&amp;lt;/code&amp;gt;:&lt;br /&gt;
*dmake makefiles in &amp;lt;code&amp;gt;main/solenv/inc/&amp;lt;/code&amp;gt;&lt;br /&gt;
*gmake makefiles in &amp;lt;code&amp;gt;main/solenv/gbuild/&amp;lt;/code&amp;gt;&lt;br /&gt;
*executables and perl files in &amp;lt;code&amp;gt;main/solenv/bin/&amp;lt;/code&amp;gt;&lt;br /&gt;
*perl modules in &amp;lt;code&amp;gt;main/bin/modules/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Libraries and other output files that are shared between modules are stored in &amp;lt;code&amp;gt;main/solver/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Building=&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
&lt;br /&gt;
Building Apache OpenOffice consists of three steps:&lt;br /&gt;
;Configuring/bootstrapping:Detect platform, operating system, compiler, etc. and write the information into a shell script for later use.  The developer can turn on or off certain features in this phase.&lt;br /&gt;
;Building:Compile the source code, transform other input files, apply localization.&lt;br /&gt;
;Packing:Create a set of files, the installation set, that can be installed on the respective operating system.  This can be msi/cab files for windows, deb or rpm for Linux, dmg for Mac.&lt;br /&gt;
&lt;br /&gt;
The configure step has to be carried out only once.  Building and packing is necessary after every source code change.  There are short cuts to avoid parts of these steps (when you know what you are doing.)&lt;br /&gt;
&lt;br /&gt;
The building examples in this wiki document use only command line approaches to building. Depending on your expertise, it may be possible to use an IDE which allows specification of custom build scripts.&lt;br /&gt;
&lt;br /&gt;
Official releases are built using [http://svn.apache.org/viewvc/openoffice/devtools/build-scripts build scripts] to automate the process.&lt;br /&gt;
&lt;br /&gt;
== General Build Requirements ==&lt;br /&gt;
&lt;br /&gt;
The general requirements for all platforms are&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
! Requirement&lt;br /&gt;
! Description&lt;br /&gt;
! Configure switch&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Java JDK&lt;br /&gt;
| Java Implementation compatible with [http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html JDK 1.7] or  higher. [http://openjdk.java.net/ OpenJDK] is supported as well.&lt;br /&gt;
For Windows [http://www.oracle.com/technetwork/java/javase/downloads/index.html/ JDK 1.7] or JDK 1.8 is recommended.&lt;br /&gt;
The JDK&amp;#039;s bitness must match the target platform&amp;#039;s, eg. when building for Win32, use a 32 bit JDK even if compiling on Win64.&lt;br /&gt;
| --with-jdk-home=&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Perl&lt;br /&gt;
| Perl 5 - note: for Windows Perl will be installed as part of the cygwin environment.&lt;br /&gt;
&lt;br /&gt;
Also required are the perl packages&lt;br /&gt;
&lt;br /&gt;
* Archive::Zip&lt;br /&gt;
* XML::Parser&lt;br /&gt;
* LWP::UserAgent&lt;br /&gt;
* Digest::SHA&lt;br /&gt;
* Digest::MD5&lt;br /&gt;
* LWP::Protocol::https&lt;br /&gt;
&lt;br /&gt;
On Linux, use whenever possible your package manager to install the required modules. On Windows, use cygwin&amp;#039;s setup-x86.exe or setup-x86_64.exe.&lt;br /&gt;
&lt;br /&gt;
The name of packages varies depending on the system:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Perl Module &lt;br /&gt;
! CentOS/Fedora&lt;br /&gt;
! Debian/Ubuntu&lt;br /&gt;
! Windows/cygwin&lt;br /&gt;
|-&lt;br /&gt;
| Archive::Zip&lt;br /&gt;
| perl-Archive-Zip&lt;br /&gt;
| libarchive-zip-perl&lt;br /&gt;
| perl-Archive-Zip&lt;br /&gt;
|-&lt;br /&gt;
| XML::Parser&lt;br /&gt;
| perl-XML-Parser&lt;br /&gt;
| libxml-parser-perl&lt;br /&gt;
| perl-XML-Parser&lt;br /&gt;
|-&lt;br /&gt;
| LWP::UserAgent&lt;br /&gt;
| perl-libwww-perl&lt;br /&gt;
| libwww-perl&lt;br /&gt;
| perl-libwww-perl&lt;br /&gt;
|-&lt;br /&gt;
| Digest::SHA&lt;br /&gt;
| perl-Digest-SHA&lt;br /&gt;
| perl&lt;br /&gt;
| perl-Digest-SHA&lt;br /&gt;
|-&lt;br /&gt;
| Digest::MD5&lt;br /&gt;
| perl-Digest-MD5&lt;br /&gt;
| perl&lt;br /&gt;
| perl&lt;br /&gt;
|-&lt;br /&gt;
| LWP::Protocol::https&lt;br /&gt;
| perl-LWP-Protocol-https&lt;br /&gt;
| liblwp-protocol-https-perl&lt;br /&gt;
| perl-LWP-Protocol-https&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
On some rather old systems, &amp;#039;&amp;#039;LWP::Protocol::https&amp;#039;&amp;#039; is installed in the same package as &amp;#039;&amp;#039;LWP::UserAgent&amp;#039;&amp;#039;; in this case, you need to install further dependencies in order to use &amp;#039;&amp;#039;LWP::UserAgent&amp;#039;&amp;#039; with the HTTPS protocol with no errors; on CentOS 5, for example, you need to install the &amp;#039;&amp;#039;Crypt::SSLeay&amp;#039;&amp;#039; module, provided by the &amp;#039;&amp;#039;perl-Crypt-SSLeay&amp;#039;&amp;#039; package.&lt;br /&gt;
&lt;br /&gt;
On Mac OS X, bootstrap may fail to download external dependencies from HTTPS URLs (you may get an error with a message like &amp;quot;Can&amp;#039;t verify SSL peers without knowing which Certificate Authorities to trust&amp;quot;), even if configure found all required modules; in this case, install the &amp;#039;&amp;#039;Mozilla::CA&amp;#039;&amp;#039; module using cpan.&lt;br /&gt;
&lt;br /&gt;
On CentOS, &amp;#039;&amp;#039;perl-Digest-SHA&amp;#039;&amp;#039; might be only provided through the EPEL repository.&lt;br /&gt;
&lt;br /&gt;
The prefered way to install Perl modules is using your system&amp;#039;s package manager; alternatively, and as last resort, Perl modules can be installed from the shell with (you may have to run it with super user/administrator rights)&lt;br /&gt;
    perl -MCPAN -e shell&lt;br /&gt;
If it is executed for the first time then CPAN will ask for configuration. Choose autoconfiguration.&lt;br /&gt;
Eventually the CPAN shell appears accepts commands.  Install missing modules with &lt;br /&gt;
    install &amp;lt;module-name&amp;gt;&lt;br /&gt;
Find more details [https://wiki.openoffice.org/wiki/CPAN_install here].&amp;lt;sup&amp;gt;5&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| CUPS&lt;br /&gt;
| cups headers. Provided by a cups-devel package or a libcups2-devel&lt;br /&gt;
&lt;br /&gt;
note: not for Windows&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| PAM&lt;br /&gt;
| PAM support. Provided by a pam-devel package or a libpam-dev&lt;br /&gt;
&lt;br /&gt;
note: not for Windows&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Apache Ant &lt;br /&gt;
| [http://ant.apache.org/ Ant 1.9 or later] (see note)&lt;br /&gt;
| --with-ant-home=&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| Archiver&lt;br /&gt;
| zip and unzip - note: for Windows zip and unzip will be installed as part of the cygwin environment.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| gperf&lt;br /&gt;
| [http://www.gnu.org/software/gperf/gperf.html gperf] tool - note: for Windows gperf will be installed as part of the cygwin environment.&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| NSS&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
| For Windows the MozillaBuild tools&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; are needed to build the NSS module. MozillaBuild tools version 3.0 or newer require a 64-bit Windows. When building on 32-bit Windows it is recommended to use version 2.2.0. They can be obtained [https://ftp.mozilla.org/pub/mozilla/libraries/win32/ here].&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| unowinreg.dll&lt;br /&gt;
| [https://tools.openoffice.org/unowinreg_prebuild/680/ pre-built unowinreg.dll] (see NOTE)&lt;br /&gt;
Required for building the ODK which is included in the build unless disabled. This file is required for non-Windows builds. Without this file, configure will try to set up cross-compiling with windows. &lt;br /&gt;
NOTE: Not for windows. Required on all non-windows platforms. Download by directly saving unowinreg.dll into /main/external/unowinreg from the link provided above, or by using wget:&lt;br /&gt;
    cd $SRC/main &amp;amp;&amp;amp;  wget -O external/unowinreg/unowinreg.dll https://tools.openoffice.org/unowinreg_prebuild/680/unowinreg.dll&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Notes:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# The NSS module (&amp;quot;Network Security Services&amp;quot;) provides security services needed for e.g. password protection. NSS can be disabled using the configure switch &amp;lt;tt&amp;gt;--disable-nss-module&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# NSS is provided by the Mozilla project. Building it on Windows requires the [https://ftp.mozilla.org/pub/mozilla/libraries/win32/ MozillaBuild tools]. Install it and use the configure switch &amp;lt;tt&amp;gt;--with-mozilla-build&amp;lt;/tt&amp;gt; to tell configure where the tools are installed. For example: &amp;lt;tt&amp;gt;--with-mozilla-build=c:/mozilla-build&amp;lt;/tt&amp;gt;&lt;br /&gt;
# Please note that CPAN is not able to deal with usernames containing spaces. To work around this fact, when CPAN asks you to specify the CPAN build and cache directory, change the default suggestion to /cpan.&lt;br /&gt;
# Apache Ant: Assure a proper ant set-up by downloading and installing ant, in total, from the ant site linked above. If you are a Linux developer, your distro may not have ant setup correctly for building Apache OpenOffice.&lt;br /&gt;
# Use &amp;lt;tt&amp;gt;./configure --help&amp;lt;/tt&amp;gt; to see all possible configuration options&lt;br /&gt;
&lt;br /&gt;
See also the platform specific requirements for&lt;br /&gt;
*[[Documentation/Building_Guide_AOO/Building_on_Windows|Windows]]&lt;br /&gt;
*[[Documentation/Building_Guide_AOO/Building_on_Linux|Linux]]&lt;br /&gt;
*[[Documentation/Building_Guide_AOO/Building_on_MacOsX|MacOSX]]&lt;br /&gt;
&lt;br /&gt;
==Configuration and bootstrapping==&lt;br /&gt;
This is typically done only once after the source code is checked out.  Repeat this after changing your mind about options given to configure.&lt;br /&gt;
&lt;br /&gt;
The call to&lt;br /&gt;
   autoconf&lt;br /&gt;
creates the main/configure script from main/configure.in and some other input files.&lt;br /&gt;
&lt;br /&gt;
The set of options/switches given to configure depends on the platform and your choice of features. To see all configure options for your system, type:&lt;br /&gt;
  configure --help&lt;br /&gt;
&lt;br /&gt;
A typical configuration call starts like this --&lt;br /&gt;
    ./configure \&lt;br /&gt;
        --with-dmake-url=https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz \&lt;br /&gt;
        --with-epm-url=https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
It tells configure where to find the source code of external tools dmake and epm.&lt;br /&gt;
&lt;br /&gt;
By default only source code under [http://www.apache.org/legal/3party.html#category-a category A] licenses is compiled and included.  Besides the Apache License 2.0 this includes for example BSD and MIT/X11 license.  If you want to enable features that rely on third party code under [http://www.apache.org/legal/3party.html#category-b category B] licenses (like MPL, CPL, EPL, etc) then add the option&lt;br /&gt;
        --enable-category-b&lt;br /&gt;
&lt;br /&gt;
For inclusion of externally hosted dictionary extensions add option&lt;br /&gt;
        --enable-bundled-dictionaries&lt;br /&gt;
Note that dictionaries rely on a category B third party library (hunspell). Therefore &amp;lt;code&amp;gt;--enable-category-b&amp;lt;/code&amp;gt; is a prerequisite for &amp;lt;code&amp;gt;--enable-bundled-dictionaries&amp;lt;/code&amp;gt;. Dictionaries have a variety of licenses and are bundled without modification: they are not compiled.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;--with-lang&amp;lt;/code&amp;gt; option will introduce the build of additional language resources. This switch accepts one or more RFC 1766 language tags as arguments, unfortunately not all languages are supported. Check the &amp;lt;code&amp;gt;[https://github.com/apache/openoffice/blob/trunk/main/solenv/inc/langlist.mk solenv/inc/langlist.mk]&amp;lt;/code&amp;gt; file for all the currently supported language tags. The environment variable WITH_LANG will then contain the language tags of the additional (en-US will always be build) languages. Example:&lt;br /&gt;
        --with-lang=&amp;quot;de fr&amp;quot;&lt;br /&gt;
enables the build of the localized German and French version.&lt;br /&gt;
&lt;br /&gt;
To build with symbolic generation, add option&lt;br /&gt;
        --enable-symbols&lt;br /&gt;
This would allow you to work with debugging symbols in gdb.&lt;br /&gt;
&lt;br /&gt;
Another useful option for interactive debugging features is dbgutil. Add option,&lt;br /&gt;
        --enable-dbgutil&lt;br /&gt;
for this feature. Also see the Debugging information on this page. &lt;br /&gt;
&lt;br /&gt;
By default the result binaries will be packaged in the default format used by your OS/Distribution. Using &amp;#039;installed&amp;#039; for package format puts OpenOffice into your &amp;#039;&amp;#039;installset&amp;#039;&amp;#039; directory (browse down ../installed/install). This will save you time for testing since you can then directly run OpenOffice from this area. &lt;br /&gt;
&lt;br /&gt;
Add option&lt;br /&gt;
        --with-package-format=&amp;quot;installed&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This will speed up development process since it skipped packaging. In some cases, packaging rips the debugging symbol so this would be necessary for symbolic generation. &amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; Additional package format options will be ignored with the &amp;quot;installed&amp;quot; option.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can run the rat scan while building with option&lt;br /&gt;
         --with-rat-scan&lt;br /&gt;
[[Documentation/Building_Guide_AOO/Rat_Scan|Here]] you can find details of the rat scan.&lt;br /&gt;
&lt;br /&gt;
Finish this step by running&lt;br /&gt;
    ./bootstrap&lt;br /&gt;
This will build dmake and epm, download missing source code tar balls of external libraries, and download missing external dictionary extensions.&lt;br /&gt;
&lt;br /&gt;
==Building==&lt;br /&gt;
Start by including the environment variables prepared by configure into your current environment with&lt;br /&gt;
   &amp;lt;tt&amp;gt;source &amp;lt;shell-script-name&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
where &amp;lt;shell-script-name&amp;gt; depends on your platform:&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!platform id&lt;br /&gt;
!&amp;lt;shell-script-name&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| wntmsci12&lt;br /&gt;
| winenv.set.sh&lt;br /&gt;
|-&lt;br /&gt;
| unxlngi6&lt;br /&gt;
| LinuxX86Env.Set.sh&lt;br /&gt;
|-&lt;br /&gt;
| unxlngx6&lt;br /&gt;
| LinuxX86-64Env.Set.sh&lt;br /&gt;
|-&lt;br /&gt;
| unxmacci&lt;br /&gt;
| MacOSXX64Env.Set.sh&lt;br /&gt;
|}&lt;br /&gt;
Look into main/set_soenv for more platforms. (search for lines &amp;lt;code&amp;gt;$OUTPATH = &amp;quot;&amp;lt;platform&amp;gt;&amp;quot;;&amp;lt;/code&amp;gt; and the nearby line &amp;lt;code&amp;gt;$outfile = &amp;quot;&amp;lt;shell-script-name&amp;gt;&amp;quot;;&amp;lt;/code&amp;gt;.  Add the suffix &amp;lt;code&amp;gt;.sh&amp;lt;/code&amp;gt; for the bash variant.&lt;br /&gt;
&lt;br /&gt;
If you want to build the whole office and the install sets then&lt;br /&gt;
    cd main/instsetoo_native&lt;br /&gt;
    build --all&lt;br /&gt;
You may want to experiment with the -P options for multi process builds to reduce the build time.&lt;br /&gt;
    build --all -P&amp;lt;m&amp;gt; -- -P&amp;lt;n&amp;gt;&lt;br /&gt;
tells build to use &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; processes (build up to &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; modules in parallel) and &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; threads for each module.&lt;br /&gt;
&lt;br /&gt;
Details about creating installation sets can be found [[Building_installation_packages|here]].&lt;br /&gt;
&lt;br /&gt;
Building Apache OpenOffice uses a custom build command, build.pl, located in /main/solenv/bin.&lt;br /&gt;
You may find it helpful to learn more about build options from the [http://www.openoffice.org/tools/tools/build.html Build Documentation]&lt;br /&gt;
&lt;br /&gt;
==Partial Builds==&lt;br /&gt;
&lt;br /&gt;
Building the whole office takes a lot of time.  Therefore it may be preferable to build only parts after making changes to the source code.&lt;br /&gt;
There are two different types of partial builds:&lt;br /&gt;
;Compatible:Can be used only when the code changes do not change exported interfaces. Use with care and only when you know what you are doing.&lt;br /&gt;
;Incompatible:Use for code changes that modify exported C++ or IDL interfaces, that modify resources that are used by other modules, or when you are not sure.&lt;br /&gt;
:If you are a new developer, you should probably always assume your changes are &amp;quot;incompatible&amp;quot; and follow the instructions for &amp;#039;&amp;#039;&amp;#039;Incompatible Build&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
===Make Systems Used by Apache OpenOffice===&lt;br /&gt;
&lt;br /&gt;
For the following Build sections you should be aware that Apache OpenOffice uses two different &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; systems to build its modules.&lt;br /&gt;
*The older one is based on dmake&lt;br /&gt;
*The other and newer one is based on GNU make.  This system is often referred to as gbuild.&lt;br /&gt;
When a module contains, among others, a Makefile and a Module_&amp;lt;module&amp;gt;.mk file then it is a gbuild module.&lt;br /&gt;
&lt;br /&gt;
===Compatible Build===&lt;br /&gt;
&lt;br /&gt;
After changing code in module &amp;lt;module&amp;gt; which does not change any exported interfaces do&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|  &lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build&lt;br /&gt;
    deliver&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make -sr&lt;br /&gt;
No explicit call to &amp;lt;code&amp;gt;deliver&amp;lt;/code&amp;gt; is necessary for gbuild modules.&lt;br /&gt;
|}&lt;br /&gt;
to compile and deliver the resulting libraries to &amp;lt;code&amp;gt;main/solver/&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
You may want to erase the output of a previous compilation. In some cases a new compilation will not work correctly unless the old output is removed.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|  &lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build --from &amp;lt;module&amp;gt; --prepare&lt;br /&gt;
or faster (but without the un-deliver)&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    rm -fr &amp;lt;platform&amp;gt;/&lt;br /&gt;
| &lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make clean&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Incompatible Build===&lt;br /&gt;
&lt;br /&gt;
Modifications that change exported interfaces require not only the module to be rebuild that contains the modified code.  All depending modules (dependencies are defined in &amp;lt;code&amp;gt;&amp;lt;module&amp;gt;/prj/build.lst&amp;lt;/code&amp;gt;) have to be rebuild as well.  This is best done from &amp;lt;code&amp;gt;main/instsetoo_native/&amp;lt;/code&amp;gt;:&lt;br /&gt;
  &amp;lt;tt&amp;gt;cd main/instsetoo_native/&amp;lt;/tt&amp;gt;&lt;br /&gt;
  &amp;lt;tt&amp;gt;build --from &amp;lt;incompatible-module&amp;gt; --prepare&amp;lt;/tt&amp;gt;&lt;br /&gt;
  &amp;lt;tt&amp;gt;build --from &amp;lt;incompatible-module&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The second line removes the output of all modules that have to be recompiled. The drawback of this command is that the output of modules which are build via gbuild are not removed. Thus, the following additional command performed after the second one will do the trick:&lt;br /&gt;
  build --from &amp;lt;incompatible-module&amp;gt; --job=&amp;quot;make clean; make clean debug=t&amp;quot; --ignore&lt;br /&gt;
&lt;br /&gt;
===Frequently used options===&lt;br /&gt;
&lt;br /&gt;
In order to add debug information to libraries and executables, add the &amp;lt;code&amp;gt;debug&amp;lt;/code&amp;gt; switch to any &amp;lt;code&amp;gt;build&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; command:&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build debug=t&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make -sr debug=t&lt;br /&gt;
|}&lt;br /&gt;
Remember that for the gbuild system you have to use the debug flag also when cleaning a module (otherwise eg the wrong precompiled headers are deleted and are not rebuilt):&lt;br /&gt;
    make clean debug=t&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can force make to rebuild dependency information by first deleting it with the depend option.  It would be rebuilt automatically with the next build:&lt;br /&gt;
{|class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!dmake&lt;br /&gt;
!gbuild&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    build depend=t&lt;br /&gt;
    build&lt;br /&gt;
|&lt;br /&gt;
    cd &amp;lt;module&amp;gt;&lt;br /&gt;
    make -sr depend=t&lt;br /&gt;
    make -sr&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Build Cleanup==&lt;br /&gt;
In the event that you want to change configuration parameters used for building, you will probably need to &amp;quot;clean&amp;quot; your build output tree before starting again.&lt;br /&gt;
&lt;br /&gt;
To do this, navigate to the &amp;quot;main&amp;quot; directory, then source your environment shell script as you did for building:&lt;br /&gt;
&lt;br /&gt;
     &amp;lt;tt&amp;gt;source &amp;lt;shell-script-name&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
then do:&lt;br /&gt;
&lt;br /&gt;
     dmake clean&lt;br /&gt;
&lt;br /&gt;
=Step-by-Step Building Guide for Different Platforms=&lt;br /&gt;
&lt;br /&gt;
This section is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the other sections of this document.&lt;br /&gt;
&lt;br /&gt;
The guides limit themselves to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step guide for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]]&lt;br /&gt;
&lt;br /&gt;
==[[Documentation/Building Guide AOO/Step by step Linux|Linux]]==&lt;br /&gt;
&lt;br /&gt;
==[[Documentation/Building Guide AOO/Step by step Windows|Windows]]==&lt;br /&gt;
&lt;br /&gt;
==[[Documentation/Building Guide AOO/Building on MacOsX|Mac OS X]]==&lt;br /&gt;
&lt;br /&gt;
= Building Apache OpenOffice with an IDE =&lt;br /&gt;
== [[OpenOffice and Eclipse|Building with Eclipse]] ==&lt;br /&gt;
&lt;br /&gt;
= Additional Build Resources =&lt;br /&gt;
It can be useful to build an older version of {{AOO}} on newer build environments, for example in order to regression test a bug in the latest version.&lt;br /&gt;
&lt;br /&gt;
Older source code may need some integrations, that are described on this page: [[Building old versions]].&lt;br /&gt;
&lt;br /&gt;
== [[Debugging|Debugging]] ==&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247249</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247249"/>
		<updated>2021-01-14T19:36:57Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Preparation of the development system */ Small introduction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
This chapter lists some Linux distributions the developers have experience with. Select your distribution of choice and follow the corresponding chapter. When your system is ready, step to the [[#Obtain the source code|next chapter]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;branch&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247248</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247248"/>
		<updated>2021-01-14T19:32:58Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Outline: two more chapters. Obtain source code and configure&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The next step will be [[#Obtain the source code|obtaining the source code]].&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
=Obtain the source code=&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;branch&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;br /&gt;
&lt;br /&gt;
=Configure=&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247247</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247247"/>
		<updated>2021-01-14T19:27:59Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Setup a VM */ Explicit instructions for 32-bit CentOS 5&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example:&lt;br /&gt;
&lt;br /&gt;
* for the 64-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-64.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5-64.iso&lt;br /&gt;
* for the 32-bit distribution:&lt;br /&gt;
  $ wget -O /tmp/CentOS-5-32.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/i386/CentOS-5.11-i386-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_32.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_32 --memory 8192 -f /vms/centos5_32.img --cdrom /tmp/CentOS-5-32.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website &amp;lt;code&amp;gt;mirror.nsc.liu.se&amp;lt;/code&amp;gt; and CentOS directory:&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/x86_64&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;/centos-store/5.11/os/i386&amp;lt;/code&amp;gt;&lt;br /&gt;
** Partitioning: do &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; follow the automatic procedure, but rather assign 60000M to /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively):&lt;br /&gt;
*** 64 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
*** 32 bit: &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/i386/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/i386/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
===Configure===&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
===Configure===&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare a release build.&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;branch&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247246</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247246"/>
		<updated>2021-01-14T18:22:07Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Ubuntu 18.04 */ Merge installation of git in the previous command&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example for the 64-bit distribution.&lt;br /&gt;
&lt;br /&gt;
  $ wget -O /tmp/CentOS-5.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website mirror.nsc.liu.se and CentOS directory /centos-store/5.11/os/x86_64&lt;br /&gt;
** Partitioning: 60000M for /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively) &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
===Configure===&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
===Configure===&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare a release build.&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev git&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;branch&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247245</id>
		<title>Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247245"/>
		<updated>2021-01-14T18:21:03Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: All this is just a preparation of the development system&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Step by step building guide on Linux}}&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Porting]]&lt;br /&gt;
[[Category:Build_System]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
This page is intended as a collection of simple step-by-step recipes to build Apache OpenOffice from source code on Linux.  A more thorough explanation of what the individual steps do and why they are necessary can be found in the [[Documentation/Building_Guide_AOO|building guide]].&lt;br /&gt;
&lt;br /&gt;
This version limits itself to either relatively recent versions of operating systems, or systems in which the OpenOffice PMC are activity using. A historical version of the step-by-step instructions for different platforms can be found [[Documentation/Building_Guide_AOO/Old_step_by_step|here]].&lt;br /&gt;
&lt;br /&gt;
= Preparation of the development system =&lt;br /&gt;
&lt;br /&gt;
Releases are built using CentOS and Fedora virtual machines.&lt;br /&gt;
However, any modern distribution should be able to build {{AOO}}.&lt;br /&gt;
&lt;br /&gt;
==CentOS 5 for AOO 4.1.x==&lt;br /&gt;
&lt;br /&gt;
CentOS 5 is our reference environment for build through the 4.1.x series. As it is a very old environment, it is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; recommended to use it for your first build. But is important to document how to build on CentOS 5 since this is where the release through 4.1.x are built.&lt;br /&gt;
&lt;br /&gt;
A 32-bit VM is used to build 32-bit releases. A 64-bit VM is used to build 64-bit releases.&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
KVM given here as example for the 64-bit distribution.&lt;br /&gt;
&lt;br /&gt;
  $ wget -O /tmp/CentOS-5.iso http://mirror.nsc.liu.se/centos-store/5.11/isos/x86_64/CentOS-5.11-x86_64-netinstall.iso&lt;br /&gt;
  $ fallocate -l 61440M /vms/centos5_64.img&lt;br /&gt;
  $ sudo virt-install --boot cdrom --name centos5_64 --memory 8192 -f /vms/centos5_64.img --cdrom /tmp/CentOS-5.iso&lt;br /&gt;
&lt;br /&gt;
* Install the system; installation will start with the above command and use the following values when asked:&lt;br /&gt;
** Installation method: HTTP with website mirror.nsc.liu.se and CentOS directory /centos-store/5.11/os/x86_64&lt;br /&gt;
** Partitioning: 60000M for /, rest swap (you will need ~55 GBytes for a full build with all languages and langpacks)&lt;br /&gt;
** Setup Base system only&lt;br /&gt;
* Reboot the VM and configure it&lt;br /&gt;
** You&amp;#039;ll probably want a non-root user with sudo access and you may want to disable some services.&lt;br /&gt;
** You&amp;#039;ll need to point URLs to vault: &amp;lt;code&amp;gt;sudo vim /etc/yum.repos.d/CentOS-Base.repo&amp;lt;/code&amp;gt; and in the enabled repositories comment out mirrorlist and add (respectively) &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/os/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/updates/x86_64/&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;baseurl=http://vault.centos.org/5.11/extras/x86_64/&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo yum update -y&amp;lt;/code&amp;gt;&lt;br /&gt;
** &amp;lt;code&amp;gt;$ sudo reboot&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory.&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs):&lt;br /&gt;
&lt;br /&gt;
  $ wget http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo rpm -ivh epel-release-5-4.noarch.rpm&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.6.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        git \&lt;br /&gt;
        ccache&lt;br /&gt;
&lt;br /&gt;
Configure ccache:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
Ant 1.7.1 is now available in the CentOS repositories:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install ant17 ant17-apache-regexp&lt;br /&gt;
&lt;br /&gt;
However, this will still cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install OpenSSL===&lt;br /&gt;
&lt;br /&gt;
The OpenSSL version included with CentOs does not support the TLS versions required for today&amp;#039;s https connections.&lt;br /&gt;
&lt;br /&gt;
As root:&lt;br /&gt;
 # cd /usr/local/src&lt;br /&gt;
 # wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz&lt;br /&gt;
 # tar xzf openssl-1.0.2a.tar.gz&lt;br /&gt;
 # cd openssl-1.0.2a&lt;br /&gt;
 # ./config -fpic shared; make&lt;br /&gt;
 # make install&lt;br /&gt;
 # echo &amp;quot;/usr/local/ssl/lib&amp;quot; &amp;gt;&amp;gt; /etc/ld.so.conf&lt;br /&gt;
 # ldconfig&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can no longer use the system Perl and standard packages on CentOS 5, which are too old, so we will need to build newer versions.&lt;br /&gt;
&lt;br /&gt;
Be root, then:&lt;br /&gt;
&lt;br /&gt;
  # cd /usr/local/src&lt;br /&gt;
  # wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz&lt;br /&gt;
  # tar xvf perl-5.14.4.tar.gz&lt;br /&gt;
  # cd perl-5.14.4&lt;br /&gt;
  # export OPENSSL_PREFIX=/usr/local/ssl&lt;br /&gt;
  # ./configure.gnu ; make&lt;br /&gt;
  # make install&lt;br /&gt;
  # /usr/local/bin/perl -MCPAN -e shell&lt;br /&gt;
       &amp;#039;&amp;#039;[ reply &amp;quot;yes&amp;quot; to all questions to carry out cpan&amp;#039;s autoconfiguration ]&amp;#039;&amp;#039;&lt;br /&gt;
   cpan[1]&amp;gt; force install Archive::Zip&lt;br /&gt;
   cpan[2]&amp;gt; install XML::Parser LWP::UserAgent Digest::SHA Digest::MD5 LWP::Protocol::https&lt;br /&gt;
   cpan[3]&amp;gt; exit&lt;br /&gt;
  #&lt;br /&gt;
&lt;br /&gt;
Make sure that /usr/local/bin/perl is in your $PATH and is used before any other versions.&lt;br /&gt;
&lt;br /&gt;
===Configure===&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare the release builds.&lt;br /&gt;
&lt;br /&gt;
==CentOS 7 and Fedora 19 for AOO 4.2.x and later==&lt;br /&gt;
&lt;br /&gt;
Although CentOS 5 was our reference environment for build through the 4.1.x series, as it is a very old environment, it is not a viable system to use for building AOO 4.2.x and later, mainly due to some dependencies no longer being available for CentOS5 (such as &amp;#039;&amp;#039;gstreamer-1.x&amp;#039;&amp;#039;). Not to say that you can&amp;#039;t do so, but we have switched to CentOS 7 for our reference build of 64-bit releases. Other than that, the actual setups and builds for both OSs are strikingly similar.&lt;br /&gt;
&lt;br /&gt;
32-bit releases are built on Fedora 19 VMs. Refer to [[#32 bit hints|this paragraph]] for more information&lt;br /&gt;
&lt;br /&gt;
===Setup a VM===&lt;br /&gt;
&lt;br /&gt;
We have had good results installing CentOS 7 x86_64 under both VirtualBox and VMware. Our community builds are actually done on a VMware Fusion VM. Build times are mostly sensitive to the number of CPUs and allocated RAM; our setup is a 8 core VM with 24GB of memory. We recommend CentOS 7.5&lt;br /&gt;
&lt;br /&gt;
===Setup repositories and packages===&lt;br /&gt;
&lt;br /&gt;
EPEL is needed for dpkg (to build DEBs) and for ccache (to speed up repeated builds, optional but recommended):&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install epel-release&lt;br /&gt;
  $ sudo yum update -y&lt;br /&gt;
&lt;br /&gt;
Now you can install all dependencies:&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        gcc \&lt;br /&gt;
        expat-devel \&lt;br /&gt;
        openssl-devel \&lt;br /&gt;
        autoconf \&lt;br /&gt;
        gcc-c++ \&lt;br /&gt;
        cups-devel \&lt;br /&gt;
        pam-devel \&lt;br /&gt;
        java-1.7.0-openjdk-devel \&lt;br /&gt;
        rpm-build \&lt;br /&gt;
        dpkg \&lt;br /&gt;
        fakeroot \&lt;br /&gt;
        gperf \&lt;br /&gt;
        freetype-devel \&lt;br /&gt;
        libX11-devel \&lt;br /&gt;
        libXt-devel \&lt;br /&gt;
        fontconfig-devel \&lt;br /&gt;
        libXrandr-devel \&lt;br /&gt;
        bison \&lt;br /&gt;
        flex \&lt;br /&gt;
        GConf2-devel \&lt;br /&gt;
        gnome-vfs2-devel \&lt;br /&gt;
        gtk2-devel \&lt;br /&gt;
        gstreamer-devel \&lt;br /&gt;
        gstreamer-plugins-base-devel \&lt;br /&gt;
        gstreamer1-devel \&lt;br /&gt;
        gstreamer1-plugins-base-devel \&lt;br /&gt;
        mesa-libGLU-devel \&lt;br /&gt;
        wget \&lt;br /&gt;
        subversion \&lt;br /&gt;
        ccache \&lt;br /&gt;
        glib2-devel \&lt;br /&gt;
        dbus-glib-devel \&lt;br /&gt;
        perl \&lt;br /&gt;
        ORBit2-devel&lt;br /&gt;
&lt;br /&gt;
Configure ccache to use at least 2 GBytes:&lt;br /&gt;
&lt;br /&gt;
  $ ccache -M 2G&lt;br /&gt;
&lt;br /&gt;
This leaves out Ant and Perl.&lt;br /&gt;
&lt;br /&gt;
===Download Ant===&lt;br /&gt;
&lt;br /&gt;
The version of Ant installed via yum can cause configure to fail, so a manual download is needed. Ant will live in ~/ant and we need to download it manually.&lt;br /&gt;
&lt;br /&gt;
 $ cd&lt;br /&gt;
 $ wget http://mirrors.nxnethosting.com/apache//ant/binaries/apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ tar xvf apache-ant-1.9.15-bin.tar.bz2&lt;br /&gt;
 $ ln -s apache-ant-1.9.15 ant&lt;br /&gt;
&lt;br /&gt;
===Install Perl modules===&lt;br /&gt;
&lt;br /&gt;
We can use the system Perl and standard packages on CentOS 6, see https://bz.apache.org/ooo/show_bug.cgi?id=127120&lt;br /&gt;
&lt;br /&gt;
  $ sudo yum install \&lt;br /&gt;
        cpan \&lt;br /&gt;
        perl-libwww-perl \&lt;br /&gt;
        perl-Archive-Zip \&lt;br /&gt;
        perl-Digest-SHA \&lt;br /&gt;
        perl-XML-Parser \&lt;br /&gt;
        perl-Crypt-SSLeay \&lt;br /&gt;
        perl-Env \&lt;br /&gt;
        perl-LWP-Protocol-https&lt;br /&gt;
&lt;br /&gt;
  $ sudo cpan File::Path&lt;br /&gt;
&lt;br /&gt;
===Build and Packaging tools===&lt;br /&gt;
&lt;br /&gt;
Download, configure, build and install dmake and epm&lt;br /&gt;
 $ wget https://github.com/jimjag/dmake/archive/v4.13.1/dmake-4.13.1.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd dmake-4.13.1&lt;br /&gt;
 $ ./configure --prefix=/usr/local; make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 $ wget https://github.com/jimjag/epm/archive/v5.0.0/epm-5.0.0.tar.gz&lt;br /&gt;
 $ # extract the archive, then&lt;br /&gt;
 $ cd epm-5.0.0&lt;br /&gt;
 $ ./configure --prefix=/usr/local ; make install&lt;br /&gt;
&lt;br /&gt;
Note: if you get &amp;lt;code&amp;gt;Error: ERROR: More than one new package in directory&amp;lt;/code&amp;gt; at the end of the build, you may have to use an older EPM. In that case, just add &amp;lt;code&amp;gt;--with-epm-url=http://sourceforge.net/projects/oooextras.mirror/files/epm-3.7.tar.gz&amp;lt;/code&amp;gt; to the options you pass to &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===32 bit hints===&lt;br /&gt;
&lt;br /&gt;
====Fedora19====&lt;br /&gt;
&lt;br /&gt;
Fedora19 is the Fedora release on which RHEL7 (and thus CentOS7) is based. The 32bit version of Fedora19 is much more stable as a build platform for AOO for 32bit Linux platforms, and is compatible with CentOS7.&lt;br /&gt;
&lt;br /&gt;
The community builds of AOO 4.2.x and later are built on Fedora19.&lt;br /&gt;
&lt;br /&gt;
====CentOS7====&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can also use CentOS 7.&lt;br /&gt;
&lt;br /&gt;
There is not a EPEL release for CentOS 7 32bit, so you&amp;#039;ll need to download, build and install dpkg and GNUtar directly. You may also need fakeroot (or pseudo):&lt;br /&gt;
&lt;br /&gt;
 $ wget ftp://ftp.de.debian.org//debian/pool/main/d/dpkg/dpkg_1.19.3.tar.xz&lt;br /&gt;
 $ wget http://ftp.gnu.org/gnu/tar/tar-1.30.tar.gz&lt;br /&gt;
&lt;br /&gt;
===Configure===&lt;br /&gt;
&lt;br /&gt;
The scripts at https://svn.apache.org/viewvc/openoffice/devtools/build-scripts/ are used to prepare a release build.&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 16.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
* Updated Install requirements. OpenJDK 6 or 7 is not available for Ubuntu 16.04:&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install openjdk-8-jdk fakeroot&lt;br /&gt;
&lt;br /&gt;
Draft: With Version 4.2 we start to update the build enviroment to Ubuntu 18.04 and Debian 9. You can follow [https://wiki.openoffice.org/wiki/User:Mechtilde/AOOBauen AOOBauen]&lt;br /&gt;
&lt;br /&gt;
==Ubuntu 18.04==&lt;br /&gt;
 {{DraftPage|EN}}&lt;br /&gt;
The process to build {{AOo|EN}} is currently undergoing experimentation. As steps are firmed up they will be added here.&lt;br /&gt;
&lt;br /&gt;
Ensure that the required package repositories are activated:&lt;br /&gt;
  $ sudo add-apt-repository universe&lt;br /&gt;
  $ sudo apt update&lt;br /&gt;
&lt;br /&gt;
Install build dependencies:&lt;br /&gt;
  $ sudo apt-get install g++ gcc bison flex libarchive-zip-perl libcups2-dev libpam0g-dev \&lt;br /&gt;
        gperf libfreetype6-dev libxaw7-dev libfontconfig1-dev libxrandr-dev patch \&lt;br /&gt;
        libgconf2-dev libgnomevfs2-dev ant libgtk2.0-dev junit junit4 libidl-dev liborbit2-dev \&lt;br /&gt;
        openjdk-8-jdk liblablgl-ocaml-dev&lt;br /&gt;
&lt;br /&gt;
Install git&lt;br /&gt;
  $ sudo apt-get install git&lt;br /&gt;
&lt;br /&gt;
Create folder for source (this is a suggested location, replace &amp;lt;yourusername&amp;gt; with your user name)&lt;br /&gt;
&lt;br /&gt;
  $ sudo mkdir /source&lt;br /&gt;
  $ sudo chown &amp;lt;yourusername&amp;gt; /source&lt;br /&gt;
  $ cd /source&lt;br /&gt;
  $ git clone https://gitbox.apache.org/repos/asf/openoffice.git&lt;br /&gt;
  $ cd openoffice/&lt;br /&gt;
  $ git checkout &amp;lt;branch&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please replace &amp;lt;branch&amp;gt; with the branch you want to compile e.g. AOO419 or AOO42X&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Talk:Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247244</id>
		<title>Talk:Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Talk:Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247244"/>
		<updated>2021-01-14T18:04:52Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: /* Instructions about obtaining the source code */ Discussion with Pedlino&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Instructions about obtaining the source code==&lt;br /&gt;
Git, SVN instructions etc. would IMHO better fit [[Documentation/Building Guide AOO]] than this page, because they are not specific to Linux.&lt;br /&gt;
Here, we could give for granted that the sources are &amp;quot;somewhere&amp;quot;, ready to be compiled.&lt;br /&gt;
Or, we could insert a link to the relevant section of the building guide.&amp;lt;br /&amp;gt;&lt;br /&gt;
The only good reason (still IMHO) to insert Git commands &amp;#039;&amp;#039;here&amp;#039;&amp;#039; would be the case they are &amp;#039;&amp;#039;very&amp;#039;&amp;#039; different from the same commands under other platforms (Windows, Mac). But I have no experience on them, unfortunately. [[User:Ardovm|Ardovm]] ([[User talk:Ardovm|talk]]) 13:07, 14 January 2021 (UTC)&lt;br /&gt;
&lt;br /&gt;
Sure, no problem just delete whatever you find redundant. I have no idea if they are specific to Linux. I don&amp;#039;t build on any other platform. I would still leave the install git command because it is not included in Ubuntu 18.04 by default. --[[User:Pedlino|Pedlino]] ([[User talk:Pedlino|talk]]) 13:30, 14 January 2021 (UTC)&lt;br /&gt;
&lt;br /&gt;
: But you are right in fact! If this is a step-by-step guide, we should have all steps, not just stop once we have the build system ready! I&amp;#039;ll re-arrange the chapters to allow the next steps. [[User:Ardovm|Ardovm]] ([[User talk:Ardovm|talk]]) 18:04, 14 January 2021 (UTC)&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Talk:Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247242</id>
		<title>Talk:Documentation/Building Guide AOO/Step by step Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Talk:Documentation/Building_Guide_AOO/Step_by_step_Linux&amp;diff=247242"/>
		<updated>2021-01-14T13:07:17Z</updated>

		<summary type="html">&lt;p&gt;Ardovm: Formatting and signature&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Instructions about obtaining the source code==&lt;br /&gt;
Git, SVN instructions etc. would IMHO better fit [[Documentation/Building Guide AOO]] than this page, because they are not specific to Linux.&lt;br /&gt;
Here, we could give for granted that the sources are &amp;quot;somewhere&amp;quot;, ready to be compiled.&lt;br /&gt;
Or, we could insert a link to the relevant section of the building guide.&amp;lt;br /&amp;gt;&lt;br /&gt;
The only good reason (still IMHO) to insert Git commands &amp;#039;&amp;#039;here&amp;#039;&amp;#039; would be the case they are &amp;#039;&amp;#039;very&amp;#039;&amp;#039; different from the same commands under other platforms (Windows, Mac). But I have no experience on them, unfortunately. [[User:Ardovm|Ardovm]] ([[User talk:Ardovm|talk]]) 13:07, 14 January 2021 (UTC)&lt;/div&gt;</summary>
		<author><name>Ardovm</name></author>
	</entry>
</feed>