Git-Bash compiliert nicht, command prompt schon

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
KANDiEH
Beiträge: 2
Registriert: Do 11. Nov 2021, 18:24

Git-Bash compiliert nicht, command prompt schon

Beitrag von KANDiEH »

Hallo ihr Lieben,

ich bin dabei mich etwas in fpc reinzufinden und stoße imme wieder auf das Poblem, dass mir folgender Fehler in der Git-Bash in vscode angezeigt wird, wenn ich eine test.exe laufen lassen möchte:

Free Pascal Compiler version 3.2.2 [2021/05/15] for i386
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling test.exe
test.exe(1,3) Fatal: Syntax error, "BEGIN" expected but "identifier MZ" found
Fatal: Compilation aborted
Error: C:\FPC\3.2.2\bin\i386-Win32\ppc386.exe returned an error exitcode


Ich habe fpc mit dem PATH verknüpft, alle Erweiterungen heruntergeladen und weiß jetzt nicht woran es liegt.

Ich vewende folgendes als Code:

PROGRAM TestProg;
{$codepage utf8}

uses crt;

BEGIN
clrscr;
WRITE('dddddd');

END.

Habt ihr eine Hilfestellung fürr mich? Wenn ich die .exe mit de Command Prompt ausfüphre, dann gehts.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 5250
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Niederösterreich
Kontaktdaten:

Re: Git-Bash compiliert nicht, command prompt schon

Beitrag von af0815 »

identifier MZ deutet darauf hin, das du versuchst dem fpc eine bereits kompilierte Datei als Source unterzujubeln. MZ ist die Kennung für ausführbare Dateien.

Er sagt ja das er test.exe kompiliert, nicht die test.pas.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

KANDiEH
Beiträge: 2
Registriert: Do 11. Nov 2021, 18:24

Re: Git-Bash compiliert nicht, command prompt schon

Beitrag von KANDiEH »

Alles klar das verstehe ich! Aber wie würde denn nun der Befehl in der Git-Bash aussehen, um die test.exe die ich mit fpc test.pas compiliert habe auszuführen?
Wenn ich ./test nutze, wird mir nur eine leere Zeile angezeigt als Output.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 5250
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Niederösterreich
Kontaktdaten:

Re: Git-Bash compiliert nicht, command prompt schon

Beitrag von af0815 »

Ich verwende keine VSCode. Da kann ich leider nicht weiterhelfen. Vor allen auch nicht auf der Git-Bash.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 1119
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Winux (L 2.0.11 FPC 3.2)
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Git-Bash compiliert nicht, command prompt schon

Beitrag von fliegermichl »

Ich vermute, daß die git-bash gar nicht dafür vorgesehen ist andere Programme auszuführen.
Ich hab mir in Lazarus ein externes Tool angelegt. (Unter Windows)

Name: DOS Box (Aktives Projekt)
Programmdateiname: c:\windows\system32\cmd.exe
Arbeitsverzeichnis: $ProjPath()

und noch eine weitere für Units aus Packages
Name: DOS Box (aktuelle Unit)
Programmdateiname: c:\windows\system32\cmd.exe
Arbeitsverzeichnis: $Path($EdFile())

In beiden Fällen muß trotzdem noch das Häkchen bei "Konsole anzeigen" gesetzt werden.
Da kann ich dann

Code: Alles auswählen

git commit -s -a -m"Das und jenes gefixt"
.\test.exe
ausführen.

PascalDragon
Beiträge: 573
Registriert: Mi 3. Jun 2020, 07:18
OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
CPU-Target: Aarch64 bis Z80 ;)
Wohnort: München

Re: Git-Bash compiliert nicht, command prompt schon

Beitrag von PascalDragon »

KANDiEH hat geschrieben:
Do 11. Nov 2021, 20:53
Alles klar das verstehe ich! Aber wie würde denn nun der Befehl in der Git-Bash aussehen, um die test.exe die ich mit fpc test.pas compiliert habe auszuführen?
Wenn ich ./test nutze, wird mir nur eine leere Zeile angezeigt als Output.

test bzw. test.exe sollte genügen. Allerdings kann es sein, dass das Konsolenfenster von Git-Bash die Konsolen-API von Windows nicht korrekt behandelt, welche nämlich benutzt wird, wenn du Crt einbindest. Teste also am Besten mal ohne Crt und ClrScr.
FPC Compiler Entwickler

Antworten