Linux 15.010 Themen, 106.838 Beiträge

Red Hat: Motif Applikation auf KDE starten

d-oli / 4 Antworten / Flachansicht Nickles

Hi

Eine Motif-Applikation die auf Red Hat ES3 entwickelt wurde lässt sich per Konsole ganz einfach durch ein Shellscript starten ($ ./start_myMotifApp.sh). Vorher muss nätürlich noch ein Shellscript (bash) ausgeführt werden ($ source setup_myScript.sh) das ein paar Umgebungsvariablen setzt, dass wird vorher durch das Startscript erledigt. Alles schön und gut.

Nun will ich auf dem Desktop ( KDE ) einen Link kreieren der diese Applikation startet. Das tue ich wie folgt:
   (1) Rechter Mausklick/Create New/Link to Applikation ...
   (2) Link to Applikation = myMotifApp
   (3) Tab Execute/Command: /bin/bash -norc /home/user/start_myMotifApp.sh; Run in terminal: Yes

- Klicke ich den Link erscheint kurze Zeit (1") einm Terminal und .... Ende.
- Lasse ich "Run in Terminal" weg, kann ich die Applikation starten, von der aus aber nicht auf einen SCSI Device screiben.
- Ändere ich das Start Script wie folgt "funktioniert" es auch mit dem Terminal, allerdings nur auf Zeit:
   #
   #!/bin/bash -norc
   #
   source /home/user/setup_myScript.sh
   /home/user/myMotifApp
   sleep 3600 # Diese Zeile muss ich einfügen und alles ist gut ...

Wieso ist das so? Gibt es da ein Problem zwischen Motif und KDE? Per Konsole funktiniert ja alles bestens, inklusive dem Schreiben auf den SCSI Device.
Wer weiss Rat?

Dank und Gruss,
d-ol

Konstruktive Kritik zeichnet sich dadurch aus, dass sie höflich, nützlich und sachlich ist.
bei Antwort benachrichtigen
d-oli KarstenW „Ich habe da keine genaue Ahung, aber ich denke es wird wohl folgendermaßen...“
Optionen

Hallo KarstenW

Danke das du dich mit meinem Problem befasst hast.

Die Umgebungsvariablen werden alle per export im Setup - Script bekanntgemacht. Es ist so, dass die Linuxkiste, auf der das Programm laufen soll, von CShell auf Bash umgestellt wurde. Mit CShell funktionierte alles wunderbar. Die Shell - Scripts wurden alle umgeschrieben und getestet, auf der Konsole funktioniert es ja schliesslich auch.

Das Problem ist, dass sich das Terminal nach Ausführen des Befehls zum Starten der Applikation sofort wieder schliesst und dadurch alle Kindprozesse (auch myMotifApp) killt. Dies verhindere ich mit sleep 3600, was aber nicht die Lösung sein kann. Bei CShell musste nach dem Befehl zum Starten der Applikation ein exit 0 rein, damit sich das Terminal nach dem Beenden der Applikation schloss. Bash schliesst das Terminal nach ausführen aller Befehle von selbst, obwohl die Prozesse die dadurch gestartet wurden noch aktiv sind.

Tja, nun bin ich auf der Suche nach einem Bash-Befehl der das verhindert.

Gruss, d-oli

Konstruktive Kritik zeichnet sich dadurch aus, dass sie höflich, nützlich und sachlich ist.
bei Antwort benachrichtigen
Die Lösung d-oli