Auf der Suche nach jemandem, nur um die %install
Makro zu klären, wenn es darum geht, nur Dateien zu platzieren. Ich habe ein RPM ohne Fehler erstellt, das nur Dateien aus dem buildroot und cp nach/usr/lib nehmen soll. Was ich in der SPEC-Datei für% install habe, ist das folgende und basiert auf this post. Ich würde das für die rpm ausreichen, um die Dateien vom buildroot zum/usr/lib Speicherort zu kopieren. Dieserpmbuild einfache Kopie der Dateien
ist, was ich versucht und es baut:
%install
mkdir -p %{buildroot}/usr/lib
install -d %{buildroot}/usr/lib/
Rethinking, ich Figur, lässt auch die Drehzahl sagen, wo ich die Dateien kopieren möchten. Ich habe versucht, so ist dies:
%install
mkdir -p %{buildroot}/usr/lib
cp %{buildroot}/usr/lib/ /usr/lib/
gut, die über das Verzeichnis/usr/lib/Lage beschwert sich nicht für den Benutzer beschreibbar sein ich die Drehzahl als auf dem Build-Maschine erschaffe. Mein Eindruck ist, dass %install
Abschnitt der Spezifikationsdatei Anweisungen sein sollte, wohin die Dateien kopiert werden sollen, wenn die RPM auf dem Zielserver installiert ist. Ich möchte nicht, dass ich das lokale Dateisystem für den RPM-Build-Server ansehe. Mein aber dahinter ist, dass das RPM bauen sollte, aber es sollte nicht bis zur RPM-Installation fehlschlagen, wenn ich versuche, die rpm als nicht-privilegierter Benutzer zu installieren. Es sollte nicht während des Builds kümmern. Ich versuche nur, einige lib-Dateien in die/usr/lib auf dem Server zu cp/extrahieren, auf dem ich die rpm installiere.
Meine Annahme ist, die RPM würde den BUILDROOT-Speicherort auf dem Server, auf dem ich die RPM installiere, erstellen und dann den Inhalt vom Buildroot-Speicherort an den angegebenen Zielspeicherort senden.
Hinweis: '% install' ist ein Specfile-Abschnitt. 'install' ist eine ausführbare Datei auf Ihrem System, die ähnlich wie' cp' ist, aber die Berechtigungen usw. behält. –