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
KarstenW d-oli „Hallo KarstenW Danke das du dich mit meinem Problem befasst hast. Die...“
Optionen

Ich kenn die CShell nicht, aber wenn in der CShell alles wunderbar lief, dann schreib doch diese Shellscripte für die CShell.
Die Pseudokommentare am Anfang der Scripte "#!/bin/bash" starten immer die richtige Shell wofür das Script geschrieben wurde.
Wenn du ein Shellscript für die Kornshell schreibst, auch wenn der jeweilige Benutzer die Kornshell nicht als Loginshell benutzt, brauchst du nur als Pseudokommentar "#!/bin/ksh" am Anfang des Scriptes schreiben. Dann wird dieses Shellscript in einer Kornshell ausgeführt (auch wenn der Benutzer die Bash benutzt).
Für die C-Shell mußt du als Pseudokommentar "#!/bin/csh" schreiben (ohne Anführungszeichen). Du mußt natürlich die CShell oder auch die erweiterte CShell auf dem jeweiligen Rechner installieren.

Das ist vielleicht die einfachste Lösung.
Die C-Shell war angeblich schon immer besser für die Shellprogrammierung geeignet. Die Bash ist besser für die Konsole.
Unter linux gibt es nur noch die erweiterte C-Shell, glaub ich jeden falls.


PS.: /bin/csh ist nur noch ein Link auf die erweiterte C-Shell /bin/tcsh auf meinem Rechner.

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
Die Lösung d-oli