Keine Konsole beim starten von GUI-Anwendungen (Wie?)
-
Hallo,
wenn ich GUI-Anwendungen mit der FLTK-Bibliothek erstelle erhalte ich immer ein Terminalfenster beim starten des Kompilats.
Wie deaktivierte/verstecke ich diese Konsole beim starten?Muss ich dafür irgend ein zusätzlichen Parameter angeben?
Muss ich dafür (je nach System) eine zusätzlich Lib linken?
Muss ich dafür irgendwie die main()-Funktion anpassen?Ich nutze den g++ Kompiler und das Ganze soll auf Windows, Linux, MacOS funktionieren.
(Also ein "Win32"-Api Aufruf nützt mir lediglich unter Windows etwas.)
-
s. z.B. How to stop a program compiled with MinGW (g++) from opening a console window in windows, also
-Wl,-subsystem,windows
oder-mwindows
als zusätzliche Linkeroption (zumindestens unter Windows).
-
Danke für deine Antwort.
Unter MacOS geht es auf dieser magischen Art-und-Weise:
fltk-config --post fertiges_programm
Dann wird daraus ein Mac-App-Bundle erstellt und kein Terminalfenster ploppt mehr auf.
Diese Vorgehensweise funktioniert aber unter Linux nicht.
Wie geht das unter Linux?
-
Ich habe es herausgefunden.
Unter Linux muss man eine "Programmname.desktop" - Datei mit mindestens folgenden Inhalt erstellen:
Beispiel:
Type=Application Name=meine_app Terminal=false Exec=./meine_app
Diese muss man dann ausführbar machen und kann die Anwendung danach ohne nerviges Terminalfenster starten.