Eine Ubuntu-Programmdatei erstellen

8

Ich habe ein Programm in C mit dem GCC-Compiler gemacht. Momentan hat es keine GUI-Komponenten. Ich kompiliere es mit Makefile und laufe es im Terminal ab. Ich muss es so bereitstellen, dass die ausführbare Datei eigenständig ist. Ich möchte, dass die ausführbare Datei ein Symbol hat und wenn Sie darauf klicken, starten Sie das Programm im Terminal. Kann mir jemand sagen, wie man das macht?

    
sfactor 22.04.2010, 13:31
quelle

2 Antworten

9

Die Grundlagen

(Disclaimer: das Folgende wurde mit Kubuntu getestet, müssen Sie möglicherweise einige Anpassungen für Ihr System vornehmen)

Tatsächlich gibt es einen Standard, um das zu tun, nicht nur für Ubuntu, sondern für eine beliebige Anzahl von * nix-Systemen. Konsultieren Sie: Ссылка :

Nehmen wir an, Sie haben Ihre foo.bin -Datei, die Sie bereitstellen möchten. Nach dem Dateisystemhierarchie-Standard ist ein guter Ort, um es zu platzieren (wenn Sie keinen Paketmanager verwenden) /usr/local/bin/ . Du brauchst auch ein Icon, ich gehe davon aus, dass dein künstlerisches Talent foo.png produziert hat, und ein guter Platz dafür könnte /usr/local/share/icons/ sein.

Jetzt müssen Sie foo.desktop erstellen, das wie folgt aussehen könnte:

%Vor%

und setze es in /usr/share/applications/ .

Sie können möglicherweise Ihren Menü-Editor verwenden, um eine solche Datei zu erstellen. Suchen Sie nach der generierten Desktop-Datei unter ~/.local/share/applications/ .

Dies sollte den Trick machen.

Eine andere Konvention besteht darin, alles unter /opt/foo/ zu speichern und symbolische Links zu /usr/local/ zu erstellen.

DE mit Portland

kreuzen

Das Portland-Projekt enthält die Befehlszeilenprogramme xdg-* , die die Installation des Symbol- / Menüeintrags der Anwendung erleichtern / Ressourcendatei, in einem DE (GNOME, KDE, etc) unabhängigen Weg.

Siehe KDE & amp; GNOME Cross-Desktop Entwicklung Tutorial auf linuxuser.co.uk.

Ein besserer Weg

Für die Bereitstellung sollten Sie ein *.deb -Paket erstellen. (mit Ihrer ausführbaren Datei, *.desktop Datei und Symbol). Es gibt mehrere Tutorials zu diesem Thema, z. Ссылка .

Beachten Sie, dass bei Verwendung eines Paketmanagers die Konvention für den Speicherort der Datei /usr/ anstelle von /usr/local/ lautet.

Gehe den ganzen Weg

Wenn Sie bereit sind, den nächsten Schritt zu tun, richten Sie Ihr eigenes Repository oder PPA ein.

>     
Chen Levy 22.04.2010, 13:43
quelle
5

Chens Link ruft das Desktopsymbol und den Menüeintrag ab; speziell für Ubuntu (und wirklich jedes von Debian abgeleitete System zum größten Teil) gibt es eine ganze Menge guter Dokumentation. Es ist ab diesem Link verfügbar: Ссылка

Lesen Sie bei "PackagingGuide". :)

Was die Ausführung Ihrer App in einem Terminal unter X - auf Ubuntu - betrifft, führen Sie einfach

aus %Vor%

Der Befehl x-terminal-emulator wird von "update-alternatives" verwaltet und ist ein Symlink zu dem, was der bevorzugte xterm-Emulator auf dem System ist. Für ein Kubuntu-System ist es normalerweise kterm, für ein normales Ubuntu-System wird es wahrscheinlich gnome-terminal usw. sein. Aber Sie können darauf zählen, dass x-terminal-emulator verfügbar ist, wenn X installiert ist. Und die Option -e funktioniert für alle, da es sich um einen xterm-Befehl handelt, den sie alle aus Gründen der Kompatibilität implementieren.

    
dannysauer 22.04.2010 13:51
quelle

Tags und Links