Neu in LazarusIDE

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Alexander Drenker
Beiträge: 4
Registriert: Mi 25. Feb 2015, 14:26

Neu in LazarusIDE

Beitrag von Alexander Drenker »

Ich bin ein erfahrener Turbo Pascal Programmierer - allerdings liegen diese Erfahungen schon gute 20 Jahre zurück. Seit zwei Wochen bin ich dabei alte Quellen zu durchstöbern um damit eine aktuelle Aufgabe zu lösen. Zuerst habe ich eine Simulation mit Python unter LINUX versucht. Leider gelingt es mir nicht, die benötigten mathematischen Bibliotheken einzubinden. Außerdem finde ich python nicht sonderlich ästetisch. Deshalb ein zweiter Anlauf - back to the roots - FPC sei ja so ähnlich wie turbo pascal. Habe mir auf YouTube das erste tutorial angeschaut, in dem gezeigt wird, wie ein Programm mit der Zeile writeln (' mY First Program ' )... in der Lazarus IDE erzeugt und ausgeführt wird. Bei mir unter Ubuntu 10.04 Linux bekomme ich aber nicht mal einen Ausgabebildschirm zu sehen. - Bestimmt ein ganz simpler Bedienfehler - aber ich komme nicht dahinter. Kennt jemand dieses Anfängerproblem noch.

Danke für Eure Unterstützung

Benutzeravatar
theo
Beiträge: 10872
Registriert: Mo 11. Sep 2006, 19:01

Re: Neu in LazarusIDE

Beitrag von theo »

Lazarus ist nat. eher für die Entwicklung von GUI Anwendungen optimiert.

Du kannst aber im Menu Start -> Startparameter -> "Startprogramm verwenden" anklicken.
Dann müsste eine Shell kommen bei "Run". Evtl. musst du noch den Debugger ausschalten.

Alternativ würde ich einfach in dem Ordner wo das Programm liegt eine Shell öffnen und das Prog. dort jew. manuell starten.

S.a.: http://wiki.freepascal.org/Console_Mode_Pascal/de

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Neu in LazarusIDE

Beitrag von mse »

Zum Programmieren von Free Pascal und Turbo Pascal Programmen eignet sich auch MSEide. Die hat ein eingebautes Konsolenfenster.
Dann gibt es noch die in Free Pascal enthaltene fpide welche stark an die ursprüngliche Turbo Pascal IDE angelehnt ist.

martin_frb
Beiträge: 586
Registriert: Mi 25. Mär 2009, 21:12
OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
CPU-Target: mostly 32 bit

Re: Neu in LazarusIDE

Beitrag von martin_frb »

unter Linux im Menu: "View" > "Debug Windows" > "Terminal Output"

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Neu in LazarusIDE

Beitrag von creed steiger »

rein ins Blaue geraten:

Das Consolenfenster öffnet und schließt sich zu schnell
entweder Programm von der Shell aus aufrufen
oder nach dem writeln ein readln einfügen

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Neu in LazarusIDE

Beitrag von mse »

@martin_frb:
Kann man damit auch Daten eingeben?

Benutzeravatar
theo
Beiträge: 10872
Registriert: Mo 11. Sep 2006, 19:01

Re: Neu in LazarusIDE

Beitrag von theo »

Uii, mse ist wieder auf Werbetour unterwegs. :wink:

martin_frb
Beiträge: 586
Registriert: Mi 25. Mär 2009, 21:12
OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
CPU-Target: mostly 32 bit

Re: Neu in LazarusIDE

Beitrag von martin_frb »

mse hat geschrieben:@martin_frb:
Kann man damit auch Daten eingeben?
Ja.

Was fehlt sind terminal functionen wie escape sequencen fuer formating

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Neu in LazarusIDE

Beitrag von mse »

Die fehlen mir auch, ich kann lediglich die escape-Sequenzen entfernen. Es sollte mal jemand einen VTxx Emulator in Free Pascal schreiben. Theo?

BTW, auf Linux kann man xterm mit "xterm -S${PTSN}/${PTSH}" starten um die Verbindung mit dem Target-PTS herzustellen. ${PTSN} und ${PTSH} werden durch die PTS-Namen und Filedescriptor ersetzt:

Code: Alles auswählen

 
function tgdbmi.createtargetconsole: boolean;
var
 ar1: stringarty;
 pts,ptsn,ptsh: msestring;
begin
 result:= false;
 if fxtermcommand <> '' then begin
  ftargetterminal.outecho:= true;
  pts:= ftargetterminal.devicename;
  ar1:= splitstring(ftargetterminal.devicename,'/'); 
  if ar1 <> nil then begin
   ptsn:= ar1[high(ar1)];
  end;
  ptsh:= inttostr(ftargetterminal.fpty);
  ftargetconsole.commandline:=
{$ifdef FPC}
       expandmacros(fxtermcommand,['PTS','PTSN','PTSH'],[pts,ptsn,ptsh],
                                                        [mao_caseinsensitive]);
{$else}
       expandmacrosstr(fxtermcommand,['PTS','PTSN','PTSH'],[pts,ptsn,ptsh],
                                                        [mao_caseinsensitive]);
{$endif}
  ftargetconsole.active:= true;
  result:= ftargetconsole.running;
 end;
end;
 
Damit ist dann Debugbetrieb mit voller VT100 Emulation möglich.
Zuletzt geändert von mse am Mi 25. Feb 2015, 18:50, insgesamt 2-mal geändert.

martin_frb
Beiträge: 586
Registriert: Mi 25. Mär 2009, 21:12
OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
CPU-Target: mostly 32 bit

Re: Neu in LazarusIDE

Beitrag von martin_frb »

mse hat geschrieben:Die fehlen mir auch, ich kann lediglich die escape-Sequenzen entfernen. Es sollte mal jemand einen VTxx Emulator in Free Pascal schreiben. Theo?
Lazarus (unter linux) erzeugt ein virtuelles dev/tty (oder war es pty ?)
Hast Du Code fuer so was auf dem Mac?

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Neu in LazarusIDE

Beitrag von mse »

martin_frb hat geschrieben: Lazarus (unter linux) erzeugt ein virtuelles dev/tty (oder war es pty ?)
pty.
Hast Du Code fuer so was auf dem Mac?
Leider nein. Sollte aber schon möglich sein da POSIX.

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Neu in LazarusIDE

Beitrag von mse »

Auf FreeBSD benutzt MSEgui:

Code: Alles auswählen

 
function posix_openpt(oflag: cint):longint; cdecl;
                                     external clib name 'posix_openpt';
function getpt(): longint;
[...]
function getpt(): longint;
begin
 result:= posix_openpt(O_RDWR);
end;
 
 
Vielleicht funktioniert das auch auf OSX?

Philos
Beiträge: 43
Registriert: Mo 3. Mär 2014, 16:06
OS, Lazarus, FPC: Ubuntu Linux 14.04, Windows 7/8, Lazarus 1.2.2, Delphi XE5
CPU-Target: amd64
Wohnort: Rostock
Kontaktdaten:

Re: Neu in LazarusIDE

Beitrag von Philos »

Alexander Drenker hat geschrieben:Bei mir unter Ubuntu 10.04 Linux bekomme ich aber nicht mal einen Ausgabebildschirm zu sehen
Immer wieder schön, neue Gesichter und "Heimkehrer" in der Pascal-Welt zu sehen! Besonders wenn's auch noch Linuxer sind :) Aber mal unabhängig davon: wie kommt es denn, dass man 2015 noch Ubuntu 10 am laufen hat? :shock:
((2*b) || !(to_be)) ... that's the question.

Alexander Drenker
Beiträge: 4
Registriert: Mi 25. Feb 2015, 14:26

Re: Neu in LazarusIDE

Beitrag von Alexander Drenker »

Philos hat geschrieben:
Alexander Drenker hat geschrieben:Bei mir unter Ubuntu 10.04 Linux bekomme ich aber nicht mal einen Ausgabebildschirm zu sehen
Immer wieder schön, neue Gesichter und "Heimkehrer" in der Pascal-Welt zu sehen! Besonders wenn's auch noch Linuxer sind :) Aber mal unabhängig davon: wie kommt es denn, dass man 2015 noch Ubuntu 10 am laufen hat? :shock:
Vielen Dank für die freundlichen und hilfreichen Rückmeldungen hier im Forum. Wieso immer noch Ubuntu 10.04? Ja ich habe zwischenzeitlich immer mal ein update auf die aktuelleren Ubuntu Versionen versucht. Also Images runter geladen, DVD erstellt und Live-System gestartet. Auf meinem ASUS-Pundit mit 2 Professoren á 3Ghz hat nichts so schön gespielt wie das alte Ubuntu 10.04 LTS. Darüber hinaus habe ich bei den neueren Versionen die Möglichkeit vermisst das Erscheinungsbild anpassen zu können. Ich bevorzuge immer noch die 'neue Welle' - Na und vielleicht mag ich auch Veränderungen nicht so gerne.

Alexander

Alexander Drenker
Beiträge: 4
Registriert: Mi 25. Feb 2015, 14:26

Re: Neu in LazarusIDE

Beitrag von Alexander Drenker »

theo hat geschrieben:Lazarus ist nat. eher für die Entwicklung von GUI Anwendungen optimiert.

Du kannst aber im Menu Start -> Startparameter -> "Startprogramm verwenden" anklicken.
Dann müsste eine Shell kommen bei "Run". Evtl. musst du noch den Debugger ausschalten.

Alternativ würde ich einfach in dem Ordner wo das Programm liegt eine Shell öffnen und das Prog. dort jew. manuell starten.

S.a.: http://wiki.freepascal.org/Console_Mode_Pascal/de

Danke, das war sehr nützlich - jetzt funktioniert die Ausgabe im Terminal. Ich musste nur den von der Lazarus IDE vorgeschlagenen Pfad ändern in '/usr/bin/X11/xterm' ändern. Wie kann ich die IDE dazu bringen sich diesen Pfad dauerhaft zu merken?

Danke und Gruß

Alexander

Antworten