2009-07-01 5 views
3

Ich möchte in der Lage sein, ein Programm in Linux zu verteilen, ohne die Quelle damit zu verteilen. Die aktuelle Lösung verteilt ein tar.gz mit einer vorkompilierten Binärdatei. Was ist der einfachste Weg, diese Binärdatei im Anwendungsmenü zu platzieren? Gibt es eine Möglichkeit, dies zu tun, die in den meisten Linux-Distributionen üblich ist, aber Ubuntu, Fedora und OpenSUSE wäre die Priorität.Verteilen eines Programms in Linux ohne die Quelle

Antwort

8

Sie wollen eine .deb und .rpm erstellen. Die erste deckt Ubuntu (Debian-Varianten) und die letzteren Red Hat-Varianten ab. Sie können auch eine eigenständige ausführbare Datei für andere Benutzer bereitstellen, die beispielsweise mit Menüs selbst arbeiten können.

Sie müssen sich mit Gnome und KDE-Menüverwaltung beschäftigen, und auch verschiedene Distributionen legen ihre Menüs anders aus. Es gibt auch das Problem von Netbook-Varianten wie Moblin, die eine Netbook-Schnittstelle haben, die wahrscheinlich ihren eigenen "Anwendung hinzufügen" -Mechanismus hat. Ich weiß nicht, ob es möglich ist, dass ein einziges .deb sowohl Gnome- als auch KDE-Menüsysteme (für Ubuntu bzw. Kubuntu) verarbeitet, aber ich stelle mir vor, dass die Fähigkeit vorhanden ist, Doppelarbeit für Ubuntu zu reduzieren.

+0

+1 ... I vergaß alles über die Debian-Welt. Schande über mich. –

2

Ich habe mich in letzter Zeit nicht damit befasst ... aber damals, als ich noch Linux benutzte, war RPM der einfachste Weg, vorkombinierte Binärdateien zu verteilen (die meisten Distributionen) hatte und hat noch eine Art Unterstützung für RPM-Pakete).

Hier ist ein alter how-to auf ein RPM-Paket Aufbau:

Linux Online - RPM How-To

2

Sie könnten BitRock intaller betrachten.

+0

Ja, BitRock InstallBuilder ermöglicht es Ihnen auch, sowohl Binärdateien als auch RPM- und DEB-Pakete zu generieren. –

1

Tun Sie tar.gz und geben Sie dann Community-Rechte, um geänderte Pakete neu zu verteilen. Sie werden RPMs, DEBs und andere Pakete für ihre geliebten Distributionen erstellen ... die wahrscheinlich ihren Distributionen viel besser passen, als Sie jemals machen könnten.

Es gibt wirklich zu viele Unterschiede zwischen Distributionen, um ein Paket zu machen, das für alle passt, oft auch subtile. Zum Beispiel haben einige Verteilungen "Anwendung" Abschnitt, andere "Anwendung s" ... und diese gemachte Menüpunkte verschwinden auf einigen Distributionen. Bibliotheken können unterschiedlich sein, Standardeinstellungen können unterschiedlich sein, und so weiter ...

RPMs und DEBs sind nicht so tragbar, wie man glaubt. Bei einem Paket kann es sogar Probleme mit verschiedenen Versionen einer einzelnen Distribution geben, und es gibt nichts Schlimmeres, als zu versuchen, schlecht vorbereitete Pakete korrekt zu installieren.

4

Alle neuen Distributionen solltexdg-utils installiert haben, welche Skripte wie

  • xdg-desktop-icon
  • xdg-desktop-menu

das, was zu sein scheinen, bietet Ihnen Ich suche nach.

+0

Ich würde Ihnen +2 geben, wenn ich direkt auf die Frage antworten könnte und nicht auf die Verpackungstangente, die alle anderen haben. – camh

0

JeeBee ist richtig, dass Sie mit .deb oder .rpm gehen möchten.

Für Ubuntu/Debian (die.deb) Ich würde hinzufügen, dass Sie es nicht an Leute senden, aber Sie erstellen ein "Repository" und lassen Sie die Benutzer diese URL zu ihrer /etc/apt/sources.list hinzufügen, dann erhalten Sie eine einfache Möglichkeit, die Software zu aktualisieren .

Auf diese Weise lösen Sie die Verteilung und aktualisierten Problem zur gleichen Zeit.

Und hier ist ein Beispiel dafür, wie diese aussehen könnte:

Und wie ein Repository könnte wie folgt aussehen:

Aber nicht wiederhole den Fehler von Atmels und tue nur i386, weil es im Moment viele andere gebräuchliche Architekturen gibt, wie die amd64.

/Johan

Verwandte Themen