Seite 1 von 1
[Gelöst] Dameon startet nicht: Gtk-WARNING **: cannot open
Verfasst: 16.04.2008 11:09
von Kukulkan
Hallo,
Ich hab mit PB 4.10 unter Linux einen Daemon geschrieben. Wenn ich normal starte klappt das alles wunderbar. Wenn ich den Daemon dann im Runlevel (zB rc2.d) starten möchte, kommt die folgende Fehlermeldung:
Gtk-WARNING **: cannot open display:
Es spielt keine Rolle, ob ich als Executable Format "Linux" oder "Console" wähle. Die Meldung kommt immer. Für einen Daemon ist es natürlich so, dass bei dessen Start nicht zwingend GTK schon einen Screen aufgebaut hat. Ich benötige diesen ja auch nicht (keine GUI programmiert, meine MessageBox etc. Nur Logfiles.). Genaugenommen bin ich mir nicht sicher, ob ein Daemon überhaupt jemals auf GTK zugreifen kann, denn auch ein stark verzögertes Starten aus dem Runlevel-Script funktioniert nicht...
Wie kann ich das als Daemon starten ohne den GTK Fehler?
Volker
Verfasst: 16.04.2008 13:55
von bobobo
Oder Andersrum :Wie kannst Du ohne GTK ein PB_Programm häkeln?
Ich denke es geht nicht. (Einer der Nachteile der Multiosigkeit von PB)
Auch unter Windows sind borderless-Programme nicht "screenlos"
Verfasst: 16.04.2008 14:09
von Kukulkan
Hallo,
Ich hab kein Problem damit, die Installation von GTK 2.0 zu verlangen. Die Frage ist, wie ich ein Display zuweisen kann. Und wenn es nur ein NULL Display ist welches, sozusagen, als Dummy herhalten muss.
Volker
Verfasst: 16.04.2008 14:24
von bobobo
ich denk mal dass in deinem runlevel 2 gar keine grafische Oberfläche bereitsteht, die (auch irgendwie virtuell) angesprochen werden kann.
so wie ich das sehe, ist das aber Voraussetzung von PB-Programmen.
schon mal im englishen forum geguckt?
Verfasst: 16.04.2008 16:37
von Kukulkan
Hallo,
Ich hab in einem Include noch einen MessageRequester() gefunden! Nachdem ich den entfernt habe klappt es nun!
Danke dennoch!
Grüsse,
Volker
Verfasst: 16.04.2008 19:52
von bobobo
würd mich aber nun schon interessieren ob der runlevel2 bei dir
grundsätzlich grafikfähig ist oder eben nicht.
Verfasst: 16.04.2008 20:49
von Kukulkan
Hallo,
Ziemlich sicher nicht. Aber eventuell gibt es eine Art Dummy-Display das man zuweisen kann? Aber das ist mir auch zu hoch. Wäre was für die Linux Spezialisten...
Grüsse,
Volker
Verfasst: 17.04.2008 00:42
von Laurin
Soweit ich weiß, gibt es ohne X-Server (x.org, xfree86 usw.) keinen Screen. Dann hat man nur die Konsole. Von einem Dumy-Screen weiß ich nichts, und würde meiner Meinung nach auch nicht funktionieren. GTK und X-Server kommunizieren ja miteinander, es würde also nichts bringen, einen davon durch einen Dummy zu ersetzen.
@bo³
Der X-Server startet üblicherweise erst im Runlevel 5.
Bei Wikipedia gibt's eine gute Auflistung, wie die meisten *nixe das handhaben:
http://de.wikipedia.org/wiki/Runlevel
Verfasst: 17.04.2008 14:21
von bobobo
die üblichen runlevel-configs kenn ich
unübliche aber auch
wenn obiges richtig ist (keine Grafik in runlevel 2) dann MUSS man pb-programme mit grafik programmieren und die kompilate können dann unter umständen (keine ausgabe auf der grafik s.o.) auch in runlevel-
niederungen im simpelbetrieb ausgeführt werden.
Kann das nicht mal ein linuxfreak bestätigen ?
Verfasst: 17.04.2008 14:44
von Kukulkan
Hallo,
Also mein PB-Kompilat läuft jetzt definitiv bereits ab Runlevel2 als Daemon. Vorraussetzung dazu ist:
- Kompilation im "Console"-Modus.
- Absoluter Verzicht auf alle GUI Funktionen.
- Dazu zählen auch MessageRequester() und dergleichen!
Ich vermute aber mal, dass GTK dennoch installiert sein muss. Das war auf meiner Kiste halt gleich von Anfang an vorhanden.
Grüsse,
Volker