1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

rpmbuild & suse linux 10.0

Discussion in 'Linux-Distributionen' started by tatze, Apr 4, 2006.

Thread Status:
Not open for further replies.
  1. tatze

    tatze Byte

    rpmbuild m. Suse 10.0

    Moin!

    aktuell will ich firefox unter suse 10.0 installieren. Ziehe ich mir
    also das tar.gz file. Nun ists ja unter suse so, dass man das
    ganze als rpm Archiv baut und dann dieses fein über den
    rpm-packetmanager installiert - richtig?

    Wenn ich nun also rpmbuild -ta ausführe bekomme ich
    folgenden Salat:

    BLA-02L:~ # rpmbuild -ta firefox-1.5.0.1.tar.gz
    error: Name field must be present in package: (main package)
    error: Version field must be present in package: (main package)
    error: Release field must be present in package: (main package)
    error: Summary field must be present in package: (main
    package)
    error: Group field must be present in package: (main package)
    error: License field must be present in package: (main package)

    Was sagt mir denn das jetzt?

    danke fürs antworten
     
  2. Rattiberta

    Rattiberta Halbes Gigabyte

    Der einfachste Weg ist, sich ein fertiges rpm-Paket zu holen. :)

    Versuch es doch mal hier:
    http://rpm.pbone.net/

    (rpm-Pakete selberbasteln tue ich nur, wenn es sich dabei um ein kein so populäres Programm handelt, das in fertiger Form "an jeder Ecke" angeboten wird.)

    MfG
    Rattiberta
     
  3. Affirmation

    Affirmation Kbyte

    Das SPEC-File fehlt wohl einfach im gepackten Archiv bzw. ist nicht korrekt (wohl ersteres).

    Es gibt 2 Arten von Installationen:
    1. Installation via Packetmanager - hier liegt das Programm als rpm, deb etc vor)
    2. Installation per Hand / Installer - hier liegt das Programm als ausführbare Datei vor oder wahlweise verpackt als tar.gz, tar.bz2 etc.. (hier bist du allerdings später auf die Gnade der Deinstallationsroutine des Programmes angewiesen)

    Eine (neue) RPM baut man generell aus einer sog. src.rpm - das ist eine Datei, die aus einem SPEC-File (das erklärt praktisch wo welche Datei bei der Installation hinmuss, was noch zu tun ist - beispielsweise das Programm kompilieren - welche Voraussetzungen nötig sind usw...) und dem Quellcode (seltener: fertig kompilierter Binärcode) besteht (in gepackter Form). Mit denen kann man die Installations-RPM nachbauen (eben mit besagtem rpmbuild), falls bespielsweise keine fertige (Installations-)RPM vorliegt (weil beispielsweise die Architektur oder der Distributor nicht offiziell unterstützt wird).


    Kurz mal anschaulich verdeutlicht:
    Sei foo.tar.gz der Quellcode, foo.spec das SPEC-File.
    foo.spec + foo.tar.gz erstellen -> "rpmbuild -ba foo.spec" -> foo.<rechner-architektur>.rpm + foo.src.rpm
    Nun wird halt generell die Architektur-spezifische RPM weitergegeben. Allerdings kannst du halt mittels der auch erstellten src.rpm das Programm für deinen PC neu kompilieren.


    Zusammengefasst:
    Du versuchst eine fertig kompilierte (gepackte) Version von Firefox noch einmal mit rpmbuild zu einer RPM zu bauen. Das geht zwar technisch (man kann im SPEC-File sagen, dass man nicht kompilieren will, sondern halt nur Dateien an einen Ort schieben will) ist aber praktisch nicht sinnvoll - weiterhin fehlt hier einfach das nötige SPEC-File.
    Wahlweise solltest du daher eine fertige RPM deines Distributors nutzen oder die tar.gz entpacken und die Installationsroutine da aufrufen (generell ist der Weg über die RPM wegen der sauberen Deinstallation zu empfehlen).
     
Thread Status:
Not open for further replies.

Share This Page