Betrifft: catalyst version 2.0.5
/etc/catalyst/catalyst.conf:
options="pkgcache"
bzgl. options="" -->> SIEHE UNTEN!!!
Zuallererst wird ein Portage Tree Snapshot erstellt,
vor Beginn der catalyst Arbeiten also ein:
Code: Select all
# emerge --sync
Code: Select all
# catalyst -s XXX_VERSION_STAMP_XXX
z.B. kann das ein Datum sein, oder ganz etwas anderes ausgefallenes...
Auf diesen Versionsbezeichner wird allerdings dann bei version_stamp in den *.spec Files referenziert.
Jetzt einen stage3-x86-2007.0.tar.bz2 herunterladen und nach
/var/tmp/catalyst/builds kopieren
Das Verzeichnis, falls es nicht existiert, anlegen.
Dieses Archiv dient als Seed zum Erzeugen des neuen Stage1 Tarballs.
Der Bootstrap mit einem x86 Tarball wird dringend empfohlen, also KEIN i686, o.ä. nehmen,
wirklich nur ein x86 Archiv!!!
Die Anpassung auf i686, ... (subarch, CHOST) wird dann später in stage2.spec vorgenommen!!!
Allgemein:
stage3-x86-2007.0.tar.bz2
ist Seed für
stage1-x86-XXX_VERSION_STAMP_XXX.tar.bz2
ist Seed für
stage2-x86-XXX_VERSION_STAMP_XXX.tar.bz2
ist Seed für
stage3-x86-XXX_VERSION_STAMP_XXX.tar.bz2
Nun ein Verzeichnis anlegen, in dem die *.spec Files gespeichert werden,
z.B.
Code: Select all
# mkdir /root/catalyst
Datei: /root/catalyst/stage1.spec
Code: Select all
subarch:
x86
target:
stage1
version_stamp:
XXX_VERSION_STAMP_XXX
rel_type:
default
profile:
default/linux/x86/2008.0
snapshot:
XXX_VERSION_STAMP_XXX
source_subpath:
stage3-x86-2007.0
chost:
i486-pc-linux-gnu
cflags:
-O2 -fomit-frame-pointer -pipe
also noch NICHT ändern, sonst findet catalyst keinen Compiler...
source_subpath referenziert immer auf den Seed, hier auf den 2007.0 Stage 3
Desweiteren sollte die subarch noch auf x86 stehen bleiben.
Danach kann das Stage1 Archiv erzeugt werden:
Code: Select all
(# cd /root/catalyst)
# catalyst -v -f ./stage1.spec
Datei: /root/catalyst/stage2.spec
Code: Select all
subarch:
i686
target:
stage2
version_stamp:
XXX_VERSION_STAMP_XXX
rel_type:
default
profile:
default/linux/x86/2008.0
snapshot:
XXX_VERSION_STAMP_XXX
source_subpath:
default/stage1-x86-XXX_VERSION_STAMP_XXX
chost:
i686-pc-linux-gnu
cflags:
-O2 -march=i686 -fomit-frame-pointer -pipe
auch die Ziel - subarch jetzt setzen. (hier i686)
Von Stage2 -> Stage3 ist das nicht mehr fehlerlos möglich...
Weitere unterstützte subarches, Doku und FAQ findet man auf:
Code: Select all
http://www.gentoo.org/proj/en/releng/catalyst/index.xml
/var/tmp/catalyst/builds/default
Jetzt:
Code: Select all
# catalyst -v -f ./stage2.spec
Erzeugen eines Stage3 Archivs:
Datei: /root/catalyst/stage3.spec
Code: Select all
subarch:
i686
target:
stage3
version_stamp:
XXX_VERSION_STAMP_XXX
rel_type:
default
profile:
default/linux/x86/2008.0
snapshot:
XXX_VERSION_STAMP_XXX
source_subpath:
default/stage2-i686-XXX_VERSION_STAMP_XXX
cflags:
-O2 -march=i686 -fomit-frame-pointer -pipe
Code: Select all
# catalyst -v -f ./stage3.spec
hier also:
/var/tmp/catalyst/builds/default/stage3-x86-XXX_VERSION_STAMP_XXX.tar.bz2
Die Angabe bei
Code: Select all
profile:Einige Anmerkungen noch zu catalyst und den den Caches in /etc/catalyst/catalyst.conf
Direkt nach der Installation von catalyst sind sehr viele Caches aktiviert.
Diese können tatsächlich sehr, sehr viel Zeit sparen, sind allerdings u.U. auch fehleranfällig.
Also lieber mal deaktivieren, falls Fehler auftauchen; pkgcache zum Beispiel kann durchaus mal zu 'unresolved symbols' in den Kompilaten führen,
vor allem, nach USE Flag Änderungen, ansonsten sollte(!) pkgcache sicher sein.
Entsprechendes gilt für die anderen Caches (je nach cache natürlich andere Fehler - klar)...
Ausserdem löscht catalyst die temporären Dateien unter /var/tmp/catalyst nicht / nur teilweise - hier gilt es also von Hand aufzuräumen,
falls irgendetwas schiefgeht.
Und Vorsicht:
nicht aus Versehen den 2007.0 Seed Tarball löschen...
