2009-07-03 7 views
4

Ich versuche rpmbuild zu verwenden, um x86-64-Pakete und libs-32bit-Paket zu erstellen.
Die gleiche src rpm ist uesd, um beide Ausgabepakete zu erstellen.
Was sind die Argumente für rpmbuild, um package-lib-32bit-X.x.x68_64.rpm zu erstellen?rpmbuild 32bit lib Pakete für x86-64

ich dies derzeit ein 32-Bit-Paket:
CC = 'gcc -m32' CXX = 'g ++ -m32' linux32 rpmbuild -bb -target = i586 package.spec

Das gibt mir package-lib-Xxi586.rpm, wenn ich package-lib-32bit-Xxx86_ 64.rpm brauche.
Welche Argumente erhalten '32bit' zum Paketnamen hinzugefügt und benannt x86_64?

+0

Naive Lösung: benennen Sie es selbst ;-) – Zifre

+0

Umbenennung der rpm-Datei tut nichts für den Namen des Pakets innerhalb der Datei und wie Es erscheint in der RPM-Datenbank. – codeDr

+0

Ich bin mir nicht sicher, warum Sie dies tun müssen - auf den meisten (x86-64) Linux-Distributionen wird das 32-Bit-Paket so etwas wie package-xy-z.i686.rpm genannt - dh die Architektur ist i686, nicht x86_64 . – DaveR

Antwort

6

für opensuse
install 'build' rpm

CC = 'gcc -m32' CXX = 'g ++ -m32' linux32 rpmbuild -BB --target = i586 package.spec

{ Echopaket
Echopaket-Entwick
}> baselib.conf
/usr/lib/build/mkbaselibs -c/usr/lib/build/baselibs_ global.conf -c baselib.conf/PATH_ to_ RPMS /.../ i586/Paket * .rpm

[edited zum Hinzufügen fehlenden zweiten Strich '-' auf Zielparameter zu rpmbuild]

+0

Bei RHEL 5 sollte das Zielargument "--target" lauten (beachten Sie den zusätzlichen Bindestrich). – bstpierre

Verwandte Themen