problem z CRT.pas we FreePascalu

0

Szanowni Forumowicze,

otóż mam problem z modułem CRT w kompilatorze FreePascal. Wcześniej używałem Turbo Pascala 7 w DosBOXie (win7 64bit), który chociaż czasami się zawieszał, sprawował się całkiem nieźle i problemu jaki zaraz opiszę nie sprawiał. Teraz jednak przesiadłem się na najnowszego FreePascala, m.in. żeby uniknąć konieczności korzystania z programów pośrednich takich jak DosBOX. Korzystając ze wskazówek w Internecie, zainstalowałem również paczkę Pascala do edytora Sublime Text 2 i podwiązałem do niego kompilator dołączony do Free Pascala (\FP\bin\i386-Win32\ppc386.exe).

Problem polega na tym, że używając kompilatora FP, nieważne czy bezpośrednio w podstawowym programie FP, czy poprzez Sublime Text 2, i wykorzystując w kodzie moduł CRT, pojawia mi się w trakcie kompilacji komunikat o błędzie... w module CRT, a dokładniej syntax error w pliku CRT.pas w wierszu 109.

Jak już powiedziałem, w Turbo Pascalu nie było tego błędu. W samym pliku CRT.pas nic nie było ruszane, a poza tym przeinstalowałem już najnowszą wersję FP, a także zainstalowałem wcześniejsze dla pewności i błąd nadal występuje. Usunięcie z kodu odwołania do CRT i związanych z tym poleceń (np. clrscr) pozwala zakończyć kompilację powodzeniem - ale nie o to przecież chodzi by unikać CRT :)

Co może być tego przyczyną? Dodam tylko, że programowaniem i samym Pascalem zainteresowałem się stosunkowo niedawno, więc może to być jakaś błahostka. Niestety nie znalazłem rozwiązania ani tu na forum, ani w Internecie. Proszę o pomoc i pozdrawiam.

Przykładowy i niezwykle prosty program:

program proba;
uses crt;

var
	i:byte;

begin
	clrscr;
	
	i:=222;
	writeln(i);
	readln;
end.

skutkuje takim oto komunikatem (skopiowane z Sublime Text 2):

 
Free Pascal Compiler version 2.6.0 [2011/12/25] for i386        {wersja bez znaczenia, najnowsza zachowuje się tak samo}
Copyright (c) 1993-2011 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling D:\programowanie\pascal\PROGRAMY\proba.pas
Compiling CRT.PAS
CRT.PAS(109,20) Fatal: Syntax error, ":" expected but ";" found
Fatal: Compilation aborted
Error: D:\programowanie\pascal\FP\bin\i386-Win32\ppc386.exe returned an error exitcode (normal if you did not specify a source file to be compiled)
[Finished in 0.2s with exit code 1]
0

Pobierz Lazarusa i sprawdź, czy też występuje ten błąd.

2

Compiling CRT.PAS

Coś masz nie tak z instalacją FreePascala, że próbuje przekompilowywać ci crt.pas.
A może dodałeś (niepotrzebnie) ten plik do katalogu z programem?

0

Azarien, trafiłeś w dziesiątkę! :)

Plik CRT.pas znajdował się w katalogu D:\programowanie\pascal\PROGRAMY\ czyli tam, gdzie zapisany był także plik proba.pas. Po usunięciu CRT.pas z tego katalogu, wszystko kompiluje się jak należy. Nie wiem jednak jak ten plik się tam znalazł - ja go tam (chyba) nie umieszczałem.

W każdym razie teraz działa. Dzięki i pozdrawiam jeszcze raz!

PS. Gdybym był modem, przeniósłbym temat do działu Newbie :) Przepraszam za kłopot.

1 użytkowników online, w tym zalogowanych: 0, gości: 1