[gelöst]FreeBSD Kommandozeilenanwendung öffnet kein Terminal
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
[gelöst]FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Hi,
ich habe unter FreeBSD mit Lazarus ein Testprogramm für die Kommandozeile erstellt. Ein ganz banales Hallo-Welt-Ding mit Writeln.
Das Projekt startet und kompiliert auch korrekt (laut Nachrichtenfenster). Nur: es passiert nichts Sichtbares. Von Windows her kennt man das ja, dass sich dann ein Terminalfenster öffnet und die Ausgabe erscheint. Hier in FreeBSD erstmal nix.
Habt ihr eine Idee, woran das liegen könnte? Google-Suche war leider erfolglos.
ich habe unter FreeBSD mit Lazarus ein Testprogramm für die Kommandozeile erstellt. Ein ganz banales Hallo-Welt-Ding mit Writeln.
Das Projekt startet und kompiliert auch korrekt (laut Nachrichtenfenster). Nur: es passiert nichts Sichtbares. Von Windows her kennt man das ja, dass sich dann ein Terminalfenster öffnet und die Ausgabe erscheint. Hier in FreeBSD erstmal nix.
Habt ihr eine Idee, woran das liegen könnte? Google-Suche war leider erfolglos.
Zuletzt geändert von Marsmännchen am So 22. Jan 2017, 19:24, insgesamt 1-mal geändert.
Ich mag Pascal...
- photor
- Beiträge: 445
- Registriert: Mo 24. Jan 2011, 21:38
- OS, Lazarus, FPC: Arch Linux: L 2.2.6 FPC 3.2.2 (Gtk2)
- CPU-Target: 64Bit
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Marsmännchen hat geschrieben:Hi,
ich habe unter FreeBSD mit Lazarus ein Testprogramm für die Kommandozeile erstellt. Ein ganz banales Hallo-Welt-Ding mit Writeln.
Das Projekt startet und kompiliert auch korrekt (laut Nachrichtenfenster). Nur: es passiert nichts Sichtbares.
Ich hab' das noch nicht probiert und habe keine Ahnung, ob ein Konsolenprogramm ein solches eigenständig aufmacht. Ich glaube fast: "nein"[*]. Siehst Du denn etwas, wenn Du ein Terminal öffnest und das Programm darin aufrufst? (Ich glaube fast: "ja")
Ciao,
Photor
[*] und dann weiß Dein Programm natürlich nicht, wohin mit der Ausgabe.
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Hi,
kann man Lazarus denn irgenwie per Einstellung sagen "wohin" es die Ausgabe senden soll? Ich hatte schon in den Settings gestöbert (sowohl Projekt als auch Lazarus), aber nix gefunden.
Im Terminal kann ich das Programm mit starten.
Ich habs versucht über den Dateimanager von Xfce (Doppelklick auf Programmsymbol) da passiert wiederum nichts.
kann man Lazarus denn irgenwie per Einstellung sagen "wohin" es die Ausgabe senden soll? Ich hatte schon in den Settings gestöbert (sowohl Projekt als auch Lazarus), aber nix gefunden.
Im Terminal kann ich das Programm mit
Code: Alles auswählen
./hallowelt
Ich habs versucht über den Dateimanager von Xfce (Doppelklick auf Programmsymbol) da passiert wiederum nichts.
Ich mag Pascal...
-
- Beiträge: 957
- Registriert: Mo 11. Sep 2006, 22:56
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Wahrscheinlich schliesst sich nach Ende des Programms der Terminal.
mach mal ganz am Ende ein Readln rein, dann wartet das Programm auf eine Tasteneingabe
und das Fenster wird sich nicht schliessen.
mach mal ganz am Ende ein Readln rein, dann wartet das Programm auf eine Tasteneingabe
und das Fenster wird sich nicht schliessen.
-
- Beiträge: 1912
- Registriert: Di 23. Sep 2014, 17:46
- OS, Lazarus, FPC: Win10 | Linux
- CPU-Target: x86_64
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Unter Unixoiden Systemen wird kein separates Konsolenfenster geöffnet wenn ein Prozess gestartet wird. Unter Linux kann man in Lazarus über das Menü Ansicht->Debugger Fenster->Terminal Ausgabe (oder so ähnlich) ein Fenster öffnen über welches die STD In und Out geht. Ansonsten kann man über Menü Start->Startparameter ein Terminal Programm auswählen (z.B. xTerm) über welches die Ausgabe laufen soll.
Ich bin kein BSD Profi, allerdings funktioniert das so problemlos unter OSX und Linux, daher bin ich recht optimistisch das dies auch unter BSD funktionieren sollte
Ich bin kein BSD Profi, allerdings funktioniert das so problemlos unter OSX und Linux, daher bin ich recht optimistisch das dies auch unter BSD funktionieren sollte
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Ich habs hinbekommen.
Für FreeBSD 11: Bei Start/Startparameter im Register Lokal Checkbox anklicken: "Startprogramm verwenden"
Bei mir wird dabei auf /usr/local/bin/xterm verwiesen.
Wenn man dann versucht, ein Programm so zu starten, bekommt man eine Fehlermeldung,
xterm versucht unter /usr/local/share/lazarus-1.6.2/tools das Script runwait.sh aufzurufen. Für das hat man aber als nomaler User keine execute-Rechte, Also wird einem gesagt: permission denied.
Also für dieses Script die Zugriffsrechte so ändern, dass man Zugriff erhält und diese Datei ausführen darf. Ich habe es in meinem Fall über die Gruppenrechte gemacht.
Jetzt klappt es bei mir prima.
EDIT: Eine kleine Unschönheit: xterm kann keine deutschen Umlaute
Für FreeBSD 11: Bei Start/Startparameter im Register Lokal Checkbox anklicken: "Startprogramm verwenden"
Bei mir wird dabei auf /usr/local/bin/xterm verwiesen.
Wenn man dann versucht, ein Programm so zu starten, bekommt man eine Fehlermeldung,
xterm versucht unter /usr/local/share/lazarus-1.6.2/tools das Script runwait.sh aufzurufen. Für das hat man aber als nomaler User keine execute-Rechte, Also wird einem gesagt: permission denied.
Also für dieses Script die Zugriffsrechte so ändern, dass man Zugriff erhält und diese Datei ausführen darf. Ich habe es in meinem Fall über die Gruppenrechte gemacht.
Jetzt klappt es bei mir prima.
EDIT: Eine kleine Unschönheit: xterm kann keine deutschen Umlaute
Ich mag Pascal...
- photor
- Beiträge: 445
- Registriert: Mo 24. Jan 2011, 21:38
- OS, Lazarus, FPC: Arch Linux: L 2.2.6 FPC 3.2.2 (Gtk2)
- CPU-Target: 64Bit
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Marsmännchen hat geschrieben:Eine kleine Unschönheit: xterm kann keine deutschen Umlaute
Hm. Ich habe momentan kein XTerm installiert. Aber eigentlich wird in dem ja auch nur eine Shell (meist [cmd]bash[/cmd]) ausgeführt. Diese Shell muss ein entsprechendes Setting bekommen. Das wird in ~/.profile oder ~/.bashrc (bzw. in den entsprechenden systemweiten Files unter /etc) gesetzt.
Welche Variablen gesetzt sind, bekommst Du mit dem Befehl env heraus. Die Darstellung wird mit den folgenden Variablen manipuliert und sehen bei mir folgendermaßen aus (etliche Variablen wg. Übersichtlichkeit gelöscht):
Code: Alles auswählen
[photor@Picard ~]$ env
LC_MEASUREMENT=de_DE.utf8
LC_PAPER=de_DE.utf8
LC_MONETARY=de_DE.utf8
LANG=de_DE.utf8
GDM_LANG=de_DE.utf8
LC_COLLATE=C
LC_NUMERIC=de_DE.utf8
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
LC_TIME=de_DE.utf8
_=/usr/bin/env
[photor@Picard ~]$
Damit sollte es eigentlcih gehen.
Hope that helps,
Photor
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Jetzt klappts bei mir auch.
Problem war, dass ich (entsprechend den Ausführungen im FreeBSD-Handbuch) die locale-Einstellungen mit de_DE.ISO8859-1 gemacht habe. Lazarus verwendet ja standardmäßig utf-8. Nachdem ich auf ISO umgestellt habe, wird alles korrekt ausgegeben.
Hast du de_DE.utf8 bei dir nur wegen Lazarus eingestellt oder hat das noch andere Vorteile gegenüber dem ISO-Zeichensatz?
Problem war, dass ich (entsprechend den Ausführungen im FreeBSD-Handbuch) die locale-Einstellungen mit de_DE.ISO8859-1 gemacht habe. Lazarus verwendet ja standardmäßig utf-8. Nachdem ich auf ISO umgestellt habe, wird alles korrekt ausgegeben.
Hast du de_DE.utf8 bei dir nur wegen Lazarus eingestellt oder hat das noch andere Vorteile gegenüber dem ISO-Zeichensatz?
Ich mag Pascal...
- photor
- Beiträge: 445
- Registriert: Mo 24. Jan 2011, 21:38
- OS, Lazarus, FPC: Arch Linux: L 2.2.6 FPC 3.2.2 (Gtk2)
- CPU-Target: 64Bit
Re: FreeBSD Kommandozeilenanwendung öffnet kein Terminal
Marsmännchen hat geschrieben:Hast du de_DE.utf8 bei dir nur wegen Lazarus eingestellt oder hat das noch andere Vorteile gegenüber dem ISO-Zeichensatz?
Hm. Gute Frage. Ich habe es irgendwann so eingestellt (wahrscheinlich irgendwo den Hinweis bekommen) und dann nicht mehr geändert, da alles unauffällig blieb und ich keine Nachteile festgestellt habe
Ciao,
Photor