Difference between revisions of "DE/Building OpenOffice.org de"

From Apache OpenOffice Wiki
< DE
Jump to: navigation, search
(Dependencies)
 
(24 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:Development]]
+
{{Old|EN}}
[[Category:Build_System]]
+
[[Category:DE]]
 +
 
  
 
Dies sind die Anweisungen, wie man ein "einfaches" ("vanilla") (oder "Up-Stream") OpenOffice.org erstellt. Einfach bedeutet: ohne Werkzeuge wie ooo-build, das den Build-Prozeß übernimmt. Falls Sie ooo-build verwenden, schauen Sie stattdessen auf [[Erstellen_mit_ooobuild]].
 
Dies sind die Anweisungen, wie man ein "einfaches" ("vanilla") (oder "Up-Stream") OpenOffice.org erstellt. Einfach bedeutet: ohne Werkzeuge wie ooo-build, das den Build-Prozeß übernimmt. Falls Sie ooo-build verwenden, schauen Sie stattdessen auf [[Erstellen_mit_ooobuild]].
Line 13: Line 14:
 
Bis dieser Leitfaden die Voraussetzungen auflistet, schauen Sie auf http://tools.openoffice.org/
 
Bis dieser Leitfaden die Voraussetzungen auflistet, schauen Sie auf http://tools.openoffice.org/
  
==Different Platforms==
+
==Unterschiedliche Plattformen==
Some information for specific platforms is provided at [http://tools.openoffice.org#Build tools].
+
Einige Informationen für bestimmte Plattformen werden unter [http://tools.openoffice.org#Build tools] zur Verfügung gestellt.
  
Also for Mac OS X see [[AquaBuild]] ( experimental Aqua version of OpenOffice.org) or [[MacOSXBuildInstructions]] ( X11 version ), for GNU/Linux Sparc see [[GNULinuxSparcPorting]] and for Windows see [[Windows]].
+
Sehen Sie sich für OS X auch  [[AquaBuild]] ( experimentale Aqua-Version von OpenOffice.org) oder [[MacOSXBuildInstructions]] ( X11-Version ), für GNU/Linux Sparc [[GNULinuxSparcPorting]] und für Windows [[Windows]] an.
  
= Building a Milestone =
+
= Einen Meilenstein (Milestone) erstellen =
== Running configure ==
+
== Configure laufen lassen ==
The first step after getting the sources (and hopefully all prerequisites) is to run configure:
+
Der erste Schritt nach dem Erhalten der Quellen (und hoffentlich aller Voraussetzungen) ist das laufen lassen von configure:
  
 
<pre>
 
<pre>
Line 28: Line 29:
 
</pre>
 
</pre>
  
You will most likely have to tell configure where it finds some packages such as ant or tell it what java to use. Use
+
Sie werden höchst wahrscheinlich configure mitteilen müssen, wo es einige Pakete wie beispielsweise Ant findet und welches Java es benutzen soll. Verwenden Sie
 
<pre>
 
<pre>
 
./configure --help
 
./configure --help
 
</pre>
 
</pre>
to get a list of valid options that you can use.
+
, um eine Liste der gültigen Optionen zu erhalten, die Sie verwenden können.
  
If you forgot to install some dependencies, the configure will remind you
+
Falls Sie vergessen haben sollten, einige Abhängigkeiten zu installieren, wird Sie das Skript configure daran erinnern, welche fehlen.
which one are lacking.
+
  
Special hint related to ant: Make sure to use an absolute path.
+
Besonderer Tipp in Bezug auf Ant: Stellen Sie sicher, dass Sie einen absoluten Pfad verwenden.
  
== Bootstrapping ==
+
== Bootstrappen ==
When configure ran fine (i.e. it did finish without any error or warnings), you can continue the build.  
+
Falls configure sauber durchläuft (d.h., es endet ohne irgendeinen Fehler oder eine Warnung), können Sie mit dem Erstellen fortfahren.  
Configure creates an environment file that you need to read into your shell.
+
Configure erstellt eine Umgebungsdatei, die Sie in Ihre Shell einlesen müssen.
If you run bash, use
+
Falls Sie eine Bash laufen haben, benutzen Sie
 
<pre>
 
<pre>
 
cd <SRC_ROOT>
 
cd <SRC_ROOT>
 
source LinuxX86Env.Set.sh
 
source LinuxX86Env.Set.sh
 
</pre>
 
</pre>
If you run a tcsh or similar, use
+
Falls Sie eine tcsh oder etwas ähnliches laufen haben, verwenden Sie
 
<pre>
 
<pre>
 
cd <SRC_ROOT>
 
cd <SRC_ROOT>
Line 54: Line 54:
 
</pre>
 
</pre>
  
Note: the environment script filename might be different on a different architecture. Replace 'X86' by what is appropriate. Also note that on older version it is 'Intel' and not 'X86'.
+
Beachten Sie: der Dateiname des Umgebungsskriptes könnte auf einer anderen Systemarchitektur anders lauten. Ersetzen Sie 'X86' durch etwas, das adäquat ist. Beachten Sie auch, dass es bei älteren Versionen 'Intel' und nicht 'X86' ist.
  
The last step before the real build is to build the buildtools that OOo uses. To do so, simply run
+
Der letzte Schritt vor dem realen Erstellen besteht darin, die Erstellungswerkzeuge (buildtools) zu kreieren, die OOo verwendet. Um dies  zu tun, lassen Sie einfach folgendes laufen:
 
<pre>
 
<pre>
 
./bootstrap
 
./bootstrap
Line 62: Line 62:
 
in <SRC_ROOT>
 
in <SRC_ROOT>
  
== Starting the real build ==
+
== Das eigentliche Erstellen starten ==
Now it is time for the real build
+
Nun ist es an der Zeit für das eigentliche Erstellen
Just type
+
Tippen Sie einfach
 
<pre>
 
<pre>
 
dmake
 
dmake
 
</pre>
 
</pre>
in <SRC_ROOT> and then relax.
+
in <SRC_ROOT> ein und entspannen Sie sich dann.
Building OOo takes some time (approx 10-12 hours on standard desktop PC) so you can do other things in the meantime.
+
Das Erstellen von OOo erfordert einige Zeit (circa 10-12 Stunden auf einem Standard-Schreibtisch-PC), weshalb Sie in der Zwischenzeit andere Dinge tun können.
  
= Building a [[CWS]] =
 
In order to build a child workspace (CWS), you need to first checkout the milestone that the cws is based upon (see Getting the source above). After that, you have to update the modules included in the cws with the cvs tag of the CWS.
 
  
You can either use [[EIS]] to get information about what milestone is the base for the CWS (see the field "Milestone (current)") and what modules it includes (see the table "Modules & Files") - or you can use [http://go-oo.org/tinderbox/tags/tag-list Tinderbox's tag-list] to get this information.
+
= Erstellen eines [[CWS]] =
 +
Um einen Child Workspace (CWS) zu erstellen, müssen Sie zuerst den Meilenstein (milestone) auschecken, auf dem der CWS basiert (sehen Sie oben das Erhalten der Quellen). Danach müssen Sie die Module, die in den CWS einbezogen sind, mit den CVS-Markierungen (cvs tag) des CWS aktualisieren.
  
Once you have collected the necessary information, you can run:
+
Sie können entweder [[EIS]] verwenden, um Informationen darüber zu erhalten, welcher Meilenstein die Basis für den CWS ist (sehen Sie sich hierzu das Feld "Milestone (current)" an) und welche Module in ihn einbezogen sind (sehen Sie sich hierzu die Tabelle "Modules & Files" an). Oder Sie können [http://go-oo.org/tinderbox/tags/tag-list Tinderbox's tag-list] benutzen, um diese Information zu erhalten.
 +
 
 +
Sobald Sie alle benötigten Informationen gesammelt haben, können Sie folgendes ausführen:
  
 
<pre>
 
<pre>
Line 84: Line 85:
 
</pre>
 
</pre>
  
Where
+
Wobei
* SRC_ROOT is the top-level directory of your milestone-checkout
+
* SRC_ROOT das Verzeichnis auf der obersten Ebene Ihres Meilenstein-Checkouts ist.
* cwstag is the cvs tag of the CWS. The tag is in the form cws_<main codeline>_<name of cws>, for example cws_src680_chart2mst3
+
* cwstag die CVS-Markierung (cvs tag) des CWS ist. Die Markierung ist in der Form cws_<main codeline>_<name of cws>, zum Beispiel cws_src680_chart2mst3
  
Note: If you're using cvs using the ssh-tunnel, use ssh's compression rather than cvs compression - that gives better results
+
Beachten Sie: Falls Sie CVS verwenden, das einen SSH-Tunnel benutzt, verwenden Sie SSH-Kompression eher als CVS-Kompression - dies ergibt bessere Resultate
  
For example, you can issue :
+
Zum Beispiel können Sie eingeben:
  
 
<pre>
 
<pre>
Line 100: Line 101:
 
= Tips and Tricks =
 
= Tips and Tricks =
  
Here are some tips that make your life easier or can accelerate the build
+
Hier einige Tipps, die Ihnen das Leben leichter machen oder das Erstellen beschleunigen können.
  
 
== ccache ==
 
== ccache ==
If possible, it is strongly recommended to install (and configure) [http://ccache.samba.org/ ccache] - this will greatly reduce build time on subsequent builds. Allow for a big cache and lots of files for the entire OOo build tree. If you're working on several [[CWS]]s simultaneously it pays to have separate caches, and also separate caches for non-/product builds within one CWS, e.g. after having sourced the environment execute the commands
+
Falls es möglich ist, ist es stärksten empfohlen, [http://ccache.samba.org/ ccache] zu installieren (und zu konfigurieren) - dies wird  die Build-Zeit für anschließende Builds sehr stark reduzieren. Geben Sie die Erlaubnis für einen großen Cache und eine Menge von Dateien für den kompletten OOo-Build-Baum. Falls Sie an mehreren [[CWS]]s gleichzeitig arbeiten, zahlt es sich aus, seperate Cache zu  haben wie auch seperate Cache für Nichtproduktive-/Produktiv-Builds innerhalb eines CWS, z.B. führen Sie, nachdem Sie die Umgebung gesourced haben, folgende Kommandos aus:
  
 
  export CCACHE_DIR="${YOUR_SOURCES}/$CWS_WORK_STAMP/.ccache_$INPATH"
 
  export CCACHE_DIR="${YOUR_SOURCES}/$CWS_WORK_STAMP/.ccache_$INPATH"
Line 110: Line 111:
 
  export CXX="ccache g++"
 
  export CXX="ccache g++"
  
in bash, respectively in tcsh
+
in der Bash beziehungsweise in der Tcsh
  
 
  setenv CCACHE_DIR "${YOUR_SOURCES}/$CWS_WORK_STAMP/.ccache_$INPATH"
 
  setenv CCACHE_DIR "${YOUR_SOURCES}/$CWS_WORK_STAMP/.ccache_$INPATH"
Line 117: Line 118:
 
  setenv CXX "ccache g++"
 
  setenv CXX "ccache g++"
  
For Windows: download from [http://artax.karlin.mff.cuni.cz/~kendy/ccache/ here], do the following:
+
Für Windows: Laden Sie von [http://artax.karlin.mff.cuni.cz/~kendy/ccache/ hier] herunter und machen Sie das Folgende:
  
 
  export CCACHE_DIR="some/place/with/space"
 
  export CCACHE_DIR="some/place/with/space"
Line 125: Line 126:
 
  # export USE_PCH=  if you experience trouble with precompiled headers
 
  # export USE_PCH=  if you experience trouble with precompiled headers
  
in bash, respectively in 4NT:
+
in der Bash beziehungsweise in 4NT:
  
 
  set CCACHE_DIR="some/place/with/space"
 
  set CCACHE_DIR="some/place/with/space"
Line 134: Line 135:
 
  set CCACHE_CPP2=TRUE and keep USE_PCH=TRUE
 
  set CCACHE_CPP2=TRUE and keep USE_PCH=TRUE
  
See also this [http://www.nabble.com/ccache-for-MSVC-t4013218.html thread] for background info on Windows ccache specifics.
+
Sehen Sie sich auch dies [http://www.nabble.com/ccache-for-MSVC-t4013218.html thread] an als Hintergrundinformation über Windows-CCache-Spezifikationen.
  
 
== set nodep=TRUE ==
 
== set nodep=TRUE ==
If you set the environment variable nodep to TRUE, then dependendy information files are not created - the build finishes faster.
+
Falls Sie  die Umgebungsvariable nodep auf TRUE setzen, werden keine Dateien mit Informationen zu den Abhängigkeiten erstellt - das Build wird damit schneller fertiggestellt.
  
But only enable that on a clean build. Once you have built OOo and then made modifications, unset the variable again to be on the safe side.
+
Allerdings sollten Sie dies nur in einem sauberen Build aktivieren. Sobald Sie OOo erstellt und danach Veränderungen vorgenommen haben, setzen Sie diese Variable wieder zurück um auf der sicheren Seite zu sein.
  
 
== set NO_HIDS=TRUE ==
 
== set NO_HIDS=TRUE ==
Similar to the nodep variable, this one prevents the generation of HIDs (Help IDs) that are mainly used for automated testing - if you only want to build OOo, you don't need those.
+
Ähnlich der Variable nodeps unterdrückt diese das Erstellen von (Hilfe-IDs), die hauptsächlich für das automatische Testen verwendet werden - falls Sie nur OOo erstellen wollen, brauchen Sie diese nicht.
  
== use parallel builds ==
+
== Verwenden von parallelen Builds ==
If you have a multiprocessor machine or similar, you can run a parallel build. There are two levels  of parallelism  - one operating on makefile level, the other one on module level
+
Falls Sie eine Mehrprozessormaschine oder etwas ähnliches haben, können Sie parallele Builds starten. Es gibt zwei Ebenen von Parallelisierung - eine, die auf der Ebene des Makefiles arbeitet und eine andere auf Modulebene.
  
=== set MAXPROCESS=<numer or processes> ===
+
=== set MAXPROCESS=<Anzahl oder Prozesse> ===
This is the makefile-parallelism. This tells dmake how many targets it is allowed to build in parallel
+
Dies ist die Makefile-Parallelisierung. Dies teilt dmake mit, wieviele Vorgaben ihm für das Parallele Erstellen erlaubt sind.
  
=== running parallel build.pl ===
+
=== starten von parallelen build.pl ===
For parallelism on the module level, you have to run build from <SRC_ROOT>/instsetoo_native with the -P<number> switch, for example:
+
Für Parallelisierung auf Modulebene müssen Sie build aus dem Verzeichnis <SRC_ROOT>/instsetoo_native starten mit dem Schalter -P<number>, zum Beispiel:
 
<pre>
 
<pre>
 
build -P2
 
build -P2
 
</pre>
 
</pre>
  
== create prebuilt mozilla and use that instead of recompiling everytime ==
+
== Erstellen eines prebuilt Mozilla und Verwendung dieses anstelle eines jedesmal neukompilierten ==
For the mozilla-components you have the choice to either build from mozilla sources, to use precompiled packages ([http://tools.openoffice.org/moz_prebuild/680/ the "official" ones can be obtained from tools.openoffice.org]) or to use system-mozilla (the one installed on your buildsystem, not everything might work, depending on the version you got installed)
+
Für die Mozilla-Komponenten haben Sie die Möglichkeit, diese entweder aus den Mozillaquellen zu erstellen, vorkompilierte Pakete ([http://tools.openoffice.org/moz_prebuild/680/ die "offiziellen" können Sie von tools.openoffice.org erhalten]) oder das System-Mozilla (dasjenige, das auf Ihrem Buildsystem installiert ist; nicht alles mag funktionieren, abhängig von der Version, die Sie installiert haben) benutzen.
You can easily create your own version of the prepacked binaries if you wish to do so (either because you cannot use the official ones because of mismatch of compiler version used to build them/other technical reasons or because you want to use stuff you didn't build yourself).
+
Sie können einfach Ihre eigene Version von vorkonfigurierten Binärdateien erstellen, wenn Sie dies tun wollen (entweder weil Sie die offiziellen nicht benutzen können aufgrund einer nicht passenden Kompilerversion, die zu ihrem Erstellen benutzt wurde, oder aus anderen technischen Gründen oder weil Sie nicht Sachen benutzen wollen, die Sie nicht selbst erstellt haben).
To do so:
+
Um dies zu tun,
  
* build the <code>moz</code> module from the mozilla sources<br/>(use <code>--enable-build-mozilla</code> when running configure and put the mozilla-source tarball to <code>moz/download</code>)
+
* erstellen Sie das Modul <code>moz</code> aus den Mozillaquellen<br/>(verwenden Sie hierzu <code>--enable-build-mozilla</code>, wenn Sie configure starten und legen Sie den Mozillaquellen-Tarball in das Verzeichnis <code>moz/download</code>)
 
* in <code>moz</code> run <code>dmake zip</code> to create the zip files
 
* in <code>moz</code> run <code>dmake zip</code> to create the zip files
 
* you'll find the zips in <code>{unxlngi#,wntmsci#}.pro/zipped</code>
 
* you'll find the zips in <code>{unxlngi#,wntmsci#}.pro/zipped</code>
Line 169: Line 170:
 
This will greatly reduce build-time (you save the time that would otherwise be spent on compiling mozilla)
 
This will greatly reduce build-time (you save the time that would otherwise be spent on compiling mozilla)
  
== saving disk space by linking to the solver only ==
+
== Sparen von Plattenplatz allein durch das Verknüpfen zum Solver ==
Use  "--dlv_switch -link" when running build to tell deliver to only link the files instead of copying them:
+
Verwenden Sie "--dlv_switch -link", wenn Sie build starten, um deliver mitzuteilen, dass es die Dateien nur verknüpfen soll, anstatt sie  zu kopieren:
 
<pre>
 
<pre>
 
build --dlv_switch -link
 
build --dlv_switch -link
 
</pre>
 
</pre>
  
== fixing epm 4 product name error ==
+
== Reparieren des EPM-4-Produktnamenfehlers ==
If you get "epm: Product names can only contain letters and numbers!" error, you must patch epm and comment out name check:
+
Falls Sie folgende Fehlermeldung erhalten "epm: Product names can only contain letters and numbers!", müssen Sie epm patchen und die Namensprüfung auskommentieren:
 
<pre>
 
<pre>
 
  /*
 
  /*
Line 187: Line 188:
 
  */
 
  */
 
</pre>
 
</pre>
 +
 +
[[Category:Build_System]]

Latest revision as of 12:35, 9 July 2018

Book-old.png    This article is outdated.    


Dies sind die Anweisungen, wie man ein "einfaches" ("vanilla") (oder "Up-Stream") OpenOffice.org erstellt. Einfach bedeutet: ohne Werkzeuge wie ooo-build, das den Build-Prozeß übernimmt. Falls Sie ooo-build verwenden, schauen Sie stattdessen auf Erstellen_mit_ooobuild.

Kompilieren von OpenOffice.org : das Verfahren

Bekommen der Quellen

Um diese Anweisungen nicht länger als nötig zu machen, gibt es eine spezielle Seite hierzu unter Wie man die Quellen bekommt.

Abhängigkeiten

Sie benötigen natürlich einige installierte Entwicklungs-Bibliotheken (development libraries), um OpenOffice.org zu erstellen. Das Skript configure wird es beanstanden, wenn etwas fehlt. Bis dieser Leitfaden die Voraussetzungen auflistet, schauen Sie auf http://tools.openoffice.org/

Unterschiedliche Plattformen

Einige Informationen für bestimmte Plattformen werden unter tools zur Verfügung gestellt.

Sehen Sie sich für OS X auch AquaBuild ( experimentale Aqua-Version von OpenOffice.org) oder MacOSXBuildInstructions ( X11-Version ), für GNU/Linux Sparc GNULinuxSparcPorting und für Windows Windows an.

Einen Meilenstein (Milestone) erstellen

Configure laufen lassen

Der erste Schritt nach dem Erhalten der Quellen (und hoffentlich aller Voraussetzungen) ist das laufen lassen von configure:

cd <SRC_ROOT>
cd config_office
./configure

Sie werden höchst wahrscheinlich configure mitteilen müssen, wo es einige Pakete wie beispielsweise Ant findet und welches Java es benutzen soll. Verwenden Sie

./configure --help

, um eine Liste der gültigen Optionen zu erhalten, die Sie verwenden können.

Falls Sie vergessen haben sollten, einige Abhängigkeiten zu installieren, wird Sie das Skript configure daran erinnern, welche fehlen.

Besonderer Tipp in Bezug auf Ant: Stellen Sie sicher, dass Sie einen absoluten Pfad verwenden.

Bootstrappen

Falls configure sauber durchläuft (d.h., es endet ohne irgendeinen Fehler oder eine Warnung), können Sie mit dem Erstellen fortfahren. Configure erstellt eine Umgebungsdatei, die Sie in Ihre Shell einlesen müssen. Falls Sie eine Bash laufen haben, benutzen Sie

cd <SRC_ROOT>
source LinuxX86Env.Set.sh

Falls Sie eine tcsh oder etwas ähnliches laufen haben, verwenden Sie

cd <SRC_ROOT>
source LinuxX86Env.Set
rehash

Beachten Sie: der Dateiname des Umgebungsskriptes könnte auf einer anderen Systemarchitektur anders lauten. Ersetzen Sie 'X86' durch etwas, das adäquat ist. Beachten Sie auch, dass es bei älteren Versionen 'Intel' und nicht 'X86' ist.

Der letzte Schritt vor dem realen Erstellen besteht darin, die Erstellungswerkzeuge (buildtools) zu kreieren, die OOo verwendet. Um dies zu tun, lassen Sie einfach folgendes laufen:

./bootstrap

in <SRC_ROOT>

Das eigentliche Erstellen starten

Nun ist es an der Zeit für das eigentliche Erstellen Tippen Sie einfach

dmake

in <SRC_ROOT> ein und entspannen Sie sich dann. Das Erstellen von OOo erfordert einige Zeit (circa 10-12 Stunden auf einem Standard-Schreibtisch-PC), weshalb Sie in der Zwischenzeit andere Dinge tun können.


Erstellen eines CWS

Um einen Child Workspace (CWS) zu erstellen, müssen Sie zuerst den Meilenstein (milestone) auschecken, auf dem der CWS basiert (sehen Sie oben das Erhalten der Quellen). Danach müssen Sie die Module, die in den CWS einbezogen sind, mit den CVS-Markierungen (cvs tag) des CWS aktualisieren.

Sie können entweder EIS verwenden, um Informationen darüber zu erhalten, welcher Meilenstein die Basis für den CWS ist (sehen Sie sich hierzu das Feld "Milestone (current)" an) und welche Module in ihn einbezogen sind (sehen Sie sich hierzu die Tabelle "Modules & Files" an). Oder Sie können Tinderbox's tag-list benutzen, um diese Information zu erhalten.

Sobald Sie alle benötigten Informationen gesammelt haben, können Sie folgendes ausführen:

cd <SRC_ROOT>
setenv CVSROOT ":pserver:anoncvs@anoncvs.services.openoffice.org:/cvs"
cvs [optional cvs flags such as -z #] update -dP -r <cwstag> <module1> <module2> <moduleN>

Wobei

  • SRC_ROOT das Verzeichnis auf der obersten Ebene Ihres Meilenstein-Checkouts ist.
  • cwstag die CVS-Markierung (cvs tag) des CWS ist. Die Markierung ist in der Form cws_<main codeline>_<name of cws>, zum Beispiel cws_src680_chart2mst3

Beachten Sie: Falls Sie CVS verwenden, das einen SSH-Tunnel benutzt, verwenden Sie SSH-Kompression eher als CVS-Kompression - dies ergibt bessere Resultate

Zum Beispiel können Sie eingeben:

cd src680-m172
setenv CVSROOT ":pserver:anoncvs@anoncvs.services.openoffice.org:/cvs"
cvs -z3 update -dP -r cws_src680_chart2mst3 chart2/ offuh/

Tips and Tricks

Hier einige Tipps, die Ihnen das Leben leichter machen oder das Erstellen beschleunigen können.

ccache

Falls es möglich ist, ist es stärksten empfohlen, ccache zu installieren (und zu konfigurieren) - dies wird die Build-Zeit für anschließende Builds sehr stark reduzieren. Geben Sie die Erlaubnis für einen großen Cache und eine Menge von Dateien für den kompletten OOo-Build-Baum. Falls Sie an mehreren CWSs gleichzeitig arbeiten, zahlt es sich aus, seperate Cache zu haben wie auch seperate Cache für Nichtproduktive-/Produktiv-Builds innerhalb eines CWS, z.B. führen Sie, nachdem Sie die Umgebung gesourced haben, folgende Kommandos aus:

export CCACHE_DIR="${YOUR_SOURCES}/$CWS_WORK_STAMP/.ccache_$INPATH"
ccache -M 2G -F 100000
export CC="ccache gcc"
export CXX="ccache g++"

in der Bash beziehungsweise in der Tcsh

setenv CCACHE_DIR "${YOUR_SOURCES}/$CWS_WORK_STAMP/.ccache_$INPATH"
ccache -M 2G -F 100000
setenv CC "ccache gcc"
setenv CXX "ccache g++"

Für Windows: Laden Sie von hier herunter und machen Sie das Folgende:

export CCACHE_DIR="some/place/with/space"
ccache -M 2G -F 10000
export CCACHE_CPP2=TRUE
export CXX="guw.pl ccache cl"
# export USE_PCH=  if you experience trouble with precompiled headers

in der Bash beziehungsweise in 4NT:

set CCACHE_DIR="some/place/with/space"
ccache -M 2G -F 10000
set CXX=ccache cl
unset USE_PCH
# if you want to experient with precompiled headers (not recommended):
set CCACHE_CPP2=TRUE and keep USE_PCH=TRUE

Sehen Sie sich auch dies thread an als Hintergrundinformation über Windows-CCache-Spezifikationen.

set nodep=TRUE

Falls Sie die Umgebungsvariable nodep auf TRUE setzen, werden keine Dateien mit Informationen zu den Abhängigkeiten erstellt - das Build wird damit schneller fertiggestellt.

Allerdings sollten Sie dies nur in einem sauberen Build aktivieren. Sobald Sie OOo erstellt und danach Veränderungen vorgenommen haben, setzen Sie diese Variable wieder zurück um auf der sicheren Seite zu sein.

set NO_HIDS=TRUE

Ähnlich der Variable nodeps unterdrückt diese das Erstellen von (Hilfe-IDs), die hauptsächlich für das automatische Testen verwendet werden - falls Sie nur OOo erstellen wollen, brauchen Sie diese nicht.

Verwenden von parallelen Builds

Falls Sie eine Mehrprozessormaschine oder etwas ähnliches haben, können Sie parallele Builds starten. Es gibt zwei Ebenen von Parallelisierung - eine, die auf der Ebene des Makefiles arbeitet und eine andere auf Modulebene.

set MAXPROCESS=<Anzahl oder Prozesse>

Dies ist die Makefile-Parallelisierung. Dies teilt dmake mit, wieviele Vorgaben ihm für das Parallele Erstellen erlaubt sind.

starten von parallelen build.pl

Für Parallelisierung auf Modulebene müssen Sie build aus dem Verzeichnis <SRC_ROOT>/instsetoo_native starten mit dem Schalter -P<number>, zum Beispiel:

build -P2

Erstellen eines prebuilt Mozilla und Verwendung dieses anstelle eines jedesmal neukompilierten

Für die Mozilla-Komponenten haben Sie die Möglichkeit, diese entweder aus den Mozillaquellen zu erstellen, vorkompilierte Pakete (die "offiziellen" können Sie von tools.openoffice.org erhalten) oder das System-Mozilla (dasjenige, das auf Ihrem Buildsystem installiert ist; nicht alles mag funktionieren, abhängig von der Version, die Sie installiert haben) benutzen. Sie können einfach Ihre eigene Version von vorkonfigurierten Binärdateien erstellen, wenn Sie dies tun wollen (entweder weil Sie die offiziellen nicht benutzen können aufgrund einer nicht passenden Kompilerversion, die zu ihrem Erstellen benutzt wurde, oder aus anderen technischen Gründen oder weil Sie nicht Sachen benutzen wollen, die Sie nicht selbst erstellt haben). Um dies zu tun,

  • erstellen Sie das Modul moz aus den Mozillaquellen
    (verwenden Sie hierzu --enable-build-mozilla, wenn Sie configure starten und legen Sie den Mozillaquellen-Tarball in das Verzeichnis moz/download)
  • in moz run dmake zip to create the zip files
  • you'll find the zips in {unxlngi#,wntmsci#}.pro/zipped

Copy them to a location of your liking. Now instead of using --enable-build-mozilla, use --disable-build-mozilla and copy the zips you created or downloaded to moz/zipped and these will be used when compiling. This will greatly reduce build-time (you save the time that would otherwise be spent on compiling mozilla)

Sparen von Plattenplatz allein durch das Verknüpfen zum Solver

Verwenden Sie "--dlv_switch -link", wenn Sie build starten, um deliver mitzuteilen, dass es die Dateien nur verknüpfen soll, anstatt sie zu kopieren:

build --dlv_switch -link

Reparieren des EPM-4-Produktnamenfehlers

Falls Sie folgende Fehlermeldung erhalten "epm: Product names can only contain letters and numbers!", müssen Sie epm patchen und die Namensprüfung auskommentieren:

 /*
  * for (i = 0; prodname[i]; i ++)
  *   if (!isalnum(prodname[i] & 255))
  *   {
  *     puts("epm: Product names can only contain letters and numbers!");
  *     usage();
  *   }
 */
Personal tools