FreePascal IDE, wie arbeitet man damit?

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
OlimilO
Beiträge: 7
Registriert: Fr 3. Sep 2010, 15:39

FreePascal IDE, wie arbeitet man damit?

Beitrag von OlimilO »

Hallo,
wenn man nur den Compiler Freepascal installiert dann wird die Anwendung "FreePascal IDE" version 1.0.12 2009/12/18 die in der console läuft installiert.
wird das benützt? wenn ja wer benützt das teil?

eigentlich find ich es ne ganz gute Idee, einen kleinen feinen schnellen Editor zur Verfügung zu haben mit dem man mal ganz schnell ne Syntax ausprobieren kann.
aber irgendwie komm ich mit dem Teil nicht so ganz klar. OK an Shift+Einfg und Strg+Einfg kann man sich gewöhnen.
Aber wie arbeitet man mit der IDE insgesamt?
Die Meldungen die im Fehlerfall ausgegeben werden sind etwas zu dünn.
Kann mir jemand erklären wie man in FreePascal Units einbindet?
also meine Hauptprogrammdatei sieht so aus:

Code: Alles auswählen

program Hello; 
begin
  writeln('Hello');
  readln;
end;
das funzt soweit auch ganz gut, aber um eine Klasse zu schreiben muss man eine Unit anlegen...
...dann muss man die Unit einbinden.
das funzt aber leider nicht, was mach ich falsch, kann mir jemand helfen?
in meinem Hauptprogramm hab ich dann die erste Zeile um "uses utest;" erweitert

program Hello; uses utest;

die unit utest.pas
sieht so aus:

Code: Alles auswählen

unit utest;
 
interface
 
uses Classes, SysUtils;
 
type
  TTest = class
  private
    FX: Integer;
  public
    constructor Create;
  end;
 
implementation
 
constructor TTest.Create;
begin
  self.FX := 123;
end;
end.
versuche ich das zu starten mit Run->Run, dann gibt die Freepascal IDE nur aus:
Main file: "C:<Pfad>.pas"
Failed to compile...
Target: Win32 for i386
Line number: 0 Total Lines: 0
...
Compile failed

wer weiss was?

vielen Dank im voraus
OlimilO

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Re: FreePascal IDE, wie arbeitet man damit?

Beitrag von knight »

OlimilO hat geschrieben:Hallo,
wenn man nur den Compiler Freepascal installiert dann wird die Anwendung "FreePascal IDE" version 1.0.12 2009/12/18 die in der console läuft installiert.
wird das benützt? wenn ja wer benützt das teil?

OlimilO
Die IDE wird benutzt. Wobei die Puristen unter den FreePascal Entwicklern sich meist mit einem einfachen Texteditor zufrieden geben.
OlimilO hat geschrieben:Hallo,
eigentlich find ich es ne ganz gute Idee, einen kleinen feinen schnellen Editor zur Verfügung zu haben mit dem man mal ganz schnell ne Syntax ausprobieren kann.
aber irgendwie komm ich mit dem Teil nicht so ganz klar. OK an Shift+Einfg und Strg+Einfg kann man sich gewöhnen.
Aber wie arbeitet man mit der IDE insgesamt?
Die Meldungen die im Fehlerfall ausgegeben werden sind etwas zu dünn.

OlimilO
Ich nehme an, du hast Turbo Pascal nicht mehr erlebt. Wenn du noch ein altes Buch zu Turbo Pascal auftreiben kannst, dann hilft es dir hier weiter. Ansonsten hilft sicher auch ein Blick in die FreePascal Dokumentation.
OlimilO hat geschrieben:Hallo,
Kann mir jemand erklären wie man in FreePascal Units einbindet?
OlimilO
Wie in jedem anderen Pascal Dialekt auch mit uses.
OlimilO hat geschrieben:Hallo,
die unit utest.pas
sieht so aus:

Code: Alles auswählen

unit utest;
 
interface
 
uses Classes, SysUtils;
 
type
  TTest = class
  private
    FX: Integer;
  public
    constructor Create;
  end;
 
implementation
 
constructor TTest.Create;
begin
  self.FX := 123;
end;
end.
versuche ich das zu starten mit Run->Run, dann gibt die Freepascal IDE nur aus:
Main file: "C:<Pfad>.pas"
Failed to compile...
Target: Win32 for i386
Line number: 0 Total Lines: 0
...
Compile failed

wer weiss was?

vielen Dank im voraus
OlimilO
Eine einzelne Unit kann man nicht direkt ausführen. Du mußt die Unit kompilieren, dann dafür sorgen, daß dein Hauptprogramm die Unit finden kann und dann kannst du dein Hauptprogramm starten.

knight

OlimilO
Beiträge: 7
Registriert: Fr 3. Sep 2010, 15:39

Re: FreePascal IDE, wie arbeitet man damit?

Beitrag von OlimilO »

Hallo knight,
vielen Dank für die Hilfe.
Die IDE wird benutzt. Wobei die Puristen unter den FreePascal Entwicklern sich meist mit einem einfachen Texteditor zufrieden geben.
OK. welcher wäre denn noch so geeignet? irgendwelche Tipps? Vim, Notepad++, der Windows-Editor.
man könnte sich ja auch mit Lazarus ganz easy selber einen bauen ;) wenn man mal wüßte wie man den Kompiler anwirft.
Ich nehme an, du hast Turbo Pascal nicht mehr erlebt.
nicht mehr so richtig. hab mit Delphi 3 angefangen, aber Turbo Pascal / Turbo Vision ist mir auf jeden Fall ein Begriff!
Wenn du noch ein altes Buch zu Turbo Pascal auftreiben kannst
Japp, ein gut sorterter Programmiererschrank hat in einer Ecke sowas drinstehen, so auch meiner!
"Turbo Pascal / Turbo Vision" von A. Ertl, A. Golgath, R. Machholz, erschinen im Addison-Wesley-Verlag 1993.
na denn wolle mer mal gugge... Ähm nö das findet man nix zum Kompilieren, ist kein Anfängerbuch - doof
Ansonsten hilft sicher auch ein Blick in die FreePascal Dokumentation.
sorry, WO IST DIE???
Wie in jedem anderen Pascal Dialekt auch mit uses.
OK, das hatt ich geschrieben, es funzte nur nicht deshalb war ich mir selbst da schon wieder unsicher. Außerdem gibt es da ein Tut indem das dann also falsch beschrieben ist.
[q]
Eine einzelne Unit kann man nicht direkt ausführen. Du mußt die Unit kompilieren, dann dafür sorgen, daß dein Hauptprogramm die Unit finden kann und dann kannst du dein Hauptprogramm starten.
[/q]
Ah OK, jetzt kommen wir der Sache schon näher!
bitte nochmal langsam zum mitschreiben. wenn man eine neue Unit anlegt dann findet FPC diese nicht, das ist wohl des Rätsels Lösung.
wie muss das aussehen?
wie teilt man dem FPC-Kompiler das mit?
muss das genauso aussehen wie in der dpr-Datei?

Code: Alles auswählen

program Project1;
 
uses
  utest in 'utest.pas';
 
begin
  writeln('test ok');
  readln;
end.
Ah OK, jetzt bringt er zumindest die Meldung: Identifier not found "class".
aber was soll das denn jetzt?
muss man noch etwas einbinden oder sollte man wie in TP class durch object ersetzen?

nochmal Danke
OlimilO

carli
Beiträge: 657
Registriert: Sa 9. Jan 2010, 17:32
OS, Lazarus, FPC: Linux 2.6.x, SVN-Lazarus, FPC 2.4.0-2
CPU-Target: 64Bit

Re: FreePascal IDE, wie arbeitet man damit?

Beitrag von carli »

Du musst in den objektorientierten Modus schalten

Code: Alles auswählen

{$mode objfpc}

OlimilO
Beiträge: 7
Registriert: Fr 3. Sep 2010, 15:39

Re: FreePascal IDE, wie arbeitet man damit?

Beitrag von OlimilO »

OK, jetzt läuft das
das Hauptprogramm Hello123.pas

Code: Alles auswählen

program Hello;
uses utest in 'utest.pas';
var t: TTest;
begin
  write('Hello');
  t := TTest.Create(123);
  writeln(t.ToStr);
  readln;
end.
die Unit utest.pas

Code: Alles auswählen

unit utest;
 
{$mode objfpc}
 
interface
 
uses
  Classes, SysUtils;
 
type
  TTest = class
  private
    FX: Integer;
  public
    constructor Create(x: Integer);
    function ToStr: String;
  end;
 
implementation
 
constructor TTest.Create(x: Integer);
begin
  self.FX := x;
end;
 
function TTest.ToStr: String;
begin
  result := IntToStr(self.FX);
end;
 
end.
Vielen Dank nochmal
OlimilO

Bora4d
Beiträge: 290
Registriert: Mo 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux)
CPU-Target: AMD64X2

Re: FreePascal IDE, wie arbeitet man damit?

Beitrag von Bora4d »

Auf der FreePascal Seite gibt's genug Dokumente für IDE und FP. Man braucht kein Buch.
http://www.freepascal.org/docs.var
Und hier ist die Benutzung von IDE beschrieben:
http://www.freepascal.org/docs-html/user/user.html

Antworten