Nowe posty

xx Dystrybucja pod HP Omen (6)
Wczoraj o 23:30:08
xx [Poradnik] Wyszukiwanie Sterowników (2)
Wczoraj o 21:08:23
lamp Problem z Linux Lite po instalacji (0)
Wczoraj o 19:50:30
xx Ile pingwinów? (1)
Wczoraj o 08:59:24
xx konfiguracja pale moon (0)
2024-03-24, 21:53:42
xx Plasma 6 w Neonie ssie trochę mniej ... (10)
2024-03-23, 02:38:11
xx problem z instalacja sterowników do karty sieciowej (3)
2024-03-18, 18:10:16
xx Plik abc.001 (1)
2024-03-17, 17:48:27
xx Zlecę dopracowanie programu w MatLab (0)
2024-03-13, 15:28:40
xx Linux Mint 21.3 XFCE brak dźwieku po paru minutach (karta muzyczna zintegrowana) (5)
2024-03-12, 23:07:01

Autor Wątek: Instalacja FreePascala  (Przeczytany 15910 razy)

Żabka

  • Gość
Instalacja FreePascala
« dnia: 2013-12-28, 18:12:09 »
Znowu ja i znowu z pytaniem :)
Otóż chcę używać FreePascala, ale nie potrafię ruszyć tego zagadnienia (mniej więcej ogarniam działanie FPC na Windowsie, problem leży w uruchomieniu go na moim Kubuntu). Chciałabym się dowiedzieć czy jest szansa na zainstalowanie FPC (program) na Kubuntu, w ten sposób abym mogła go uruchamiać z ikonki na pulpicie.

Wiem, że można doinstalować kompilator Pascala i używać Kate jako edytor, ale to mnie nie satysfakcjonuje, bo nawet jak już napiszę program (exe), to on się skompiluje ale nie otworzy. Właśnie, bo program ma działać pod Windowsem, więc bez WINE się nie obejdzie.

Najprzyjemniej by było gdyby FreePascal działał tak jak na Windowsie- otwieram program FPC, piszę program, kompiluję i uruchamiam napisany program (koniecznie z rozszerzeniem .exe), po czym wracam do okna edycji.

Pomożecie?

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2763
  • 1709
    • Zobacz profil
Instalacja FreePascala
« Odpowiedź #1 dnia: 2013-12-28, 20:47:48 »
Spróbuj tak:

mate-terminal -e fpc

gdzie "mate-terminal" to moja nazwa terminala, ty musisz wpisac nazwe terminala którą używasz w Kubuntu
" -e " ma wyswietlić
"fpc" to free pascal
Wydaje mi się że jeszcze istnieją 2 sposoby.

Edit:
przykład z forum archa
terminal -e ls --hold
Edit:
może komenda fpc nie była najlepsza, pewnie chodziło o komende fp
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

Żabka

  • Gość
Instalacja FreePascala
« Odpowiedź #2 dnia: 2013-12-28, 21:33:50 »
Nazwa terminala to jest to, co wyświetla po wpisaniu polecenia tty ? Jeśli tak to wyświetla mi się
bash: /dev/pts/1: brak dostępu
gdzie /dev/pts/1 to nazwa terminala (przynajmniej jeśli dobrze rozumiem)

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2763
  • 1709
    • Zobacz profil
Instalacja FreePascala
« Odpowiedź #3 dnia: 2013-12-28, 21:51:15 »
Może żle się wyraziłem,
jak na filmiku na poczatku masz po lewej ikonkę czarnego okienka
http://www.youtube.com/watch?v=Uabfu_RJLyg
jak uruchomisz to wyskoczy takie czarne okienko ze znakiem zachęty "$"
żeby wpisać jakąś komędę, ja taki program nazywam terminalem.

http://www.wikihow.com/Open-a-Terminal-Window-in-Ubuntu

Oprócz "terminal" jest np. xterm, ja w mate mam mate-terminal.
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

snajper_8383

  • Gość
Instalacja FreePascala
« Odpowiedź #4 dnia: 2013-12-28, 22:31:54 »
Możesz spróbować z edytorem geany. W menu jest opcja zbuduj i tam możesz podać opcje kompilowania. Jest też lazarus też możesz  zobaczyć. Z drugiej strony jak chcesz pisać programy pod windowsa, to nie lepiej pisać je pod windowsem, albo przynajmniej postawić windowsa na wirtualce.
Umiejętność poruszania się pod konsolą przy programowaniu, to rzecz niezbędna.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3049
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Instalacja FreePascala
« Odpowiedź #5 dnia: 2013-12-28, 23:50:10 »
Przepraszam, że takim tonem i trochę off-topic,  ale Pascal, bo ktoś ci każe (szkoła,  uczelnia,  bo mam nadzieję że nie pracodawca) czy Pascal,  bo leków zapomniałaś wziąć?
Pascal jest martwy,  zimny i sztywny jak Lenin. Ostatnie podrygi,  vel Delphi/Lazarus skutkowały powstaniem miliona programów komercyjnych o jakości poniżej wszelkiej krytyki.
Jak masz wybór, zainwestuj czas i energię w coś produktywnego. Nie wiem,  co chcesz dalej robić ,  ale wybór jest bogaty: "gołe" C++11, C++11 z Qt5, Go, Python,  Ruby,  Erlang,  Java,  JavaScript (np NodeJS).  To są języki, w których pisze się systemy produkcyjne.
Żabko,  jak nie musisz,  nie idź drogą Pascala. Szkoda czasu. Mówi to facet,  który 2/3 życia spędził z komputerami i który w czasie popularności Delphi robił z nim "cuda na kiju" a ostatnio użerał się z czyimś starym kodem Delphi rzucającym GPFem. Jak okazało się, nowy zaj*sty kompilator w domyśle Stringi traktuje jako 8-bitowe z kodowaniem domyślnym dla języka systemu (CP1250), ale tablica stringów już była Unikodowa... Dodatkowo radośnie konwertował znaki,  których NIE ma w CP (CP1250 ma 6 dziur bez kodów) na Unicode i odwrotnie... Delpbi/Pascalowi mówię stanowcze NIE.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Żabka

  • Gość
Instalacja FreePascala
« Odpowiedź #6 dnia: 2013-12-29, 19:08:52 »
Cytat: tele
Może żle się wyraziłem,
jak na filmiku na poczatku masz po lewej ikonkę czarnego okienka
http://www.youtube.com/watch?v=Uabfu_RJLyg jak uruchomisz to wyskoczy takie czarne okienko ze znakiem zachęty "$"
żeby wpisać jakąś komędę, ja taki program nazywam terminalem.

http://www.wikihow.com/Open-a-Terminal-Window-in-Ubuntu
Nie mam, na filmiku jest GNOME a ja mam KDE. Ale wydaje mi się że wiem o co chodzi
Cytuj
Oprócz "terminal" jest np. xterm, ja w mate mam mate-terminal.
Wybacz, ale naprawdę nie mam pojęcia o co chodzi. Google mi nie pomogło- pewnie dlatego, że nawet jak coś jest to, z moim ułomnym angielskim i kompletnym brakiem zaznajomienia z tematem, nic z tego nie rozumiem.

Dla mnie zawsze terminal=konsola, czyli to co jest zaznaczone:
http://img.liczniki.org/20131229/terminal-1388328563.png
I mam tam wpisać po $ -e fpc czy /dev/pts/1 -e fpc ? Pewnie coś innego, bo przy tym pierwszym odpowiada mi ,,nie znaleziono polecenia" a przy tym drugim, jak już wspomniałam, brak dostępu.

Cytat: snajper_8383
Możesz spróbować z edytorem geany. W menu jest opcja zbuduj i tam możesz podać opcje kompilowania. Jest też lazarus też możesz zobaczyć.
Brzmi ciekawie, jeśli dobrze rozumuję w Geany mogę napisać coś i ustawić żeby kompilowało? A napisany program będzie się otwierał?
Owszem, mogę pisać pod Windowsem (i znając moją nieznajomość Kubuntu pewnie będzie trzeba), tylko chciałam wiedzieć czy się da- a jeśli się da to jak.
Co do mojego radosnego programotwórstwa nie można używać słowa programowanie, bo to, co robię na pewno nie kwalifikuje się pod cokolwiek sensownego (czy też działającego).

Cytat: pkraszewski
Przepraszam, że takim tonem i trochę off-topic, ale Pascal, bo ktoś ci każe (szkoła, uczelnia, bo mam nadzieję że nie pracodawca) czy Pascal, bo leków zapomniałaś wziąć?
Pascal jest martwy, zimny i sztywny jak Lenin.
Szkoła. Swoją drogą ciekawe porównanie do Lenina :)

Naprawdę, głupio mi że tak się dopytuję o rzeczy dla Was oczywiste, ale chciałabym się jakoś zaznajomić z tym systemem a nie znalazłam jeszcze strony, gdzie byłoby tak łopatologicznie wyjaśnione co jest co, od podstaw.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2763
  • 1709
    • Zobacz profil
Instalacja FreePascala
« Odpowiedź #7 dnia: 2013-12-29, 21:52:59 »
Edytowane :
Sprawdziłem pod Kubuntu emulator terminala nazywa się konsole


Tworzysz link do aplikacji, np. na pulpicie,
we właściwościach ikonki jak wyżej na obrazku wpisujesz komendę
konsole -e fp
i powinno działać

" konsole --hold -e fp " gdyby się odrazu zamykało,
ale free pascala akurat nie zamyka po wpisaniu komendy :)



To i owo:
xterm
http://pl.wikipedia.org/wiki/Xterm
terminal ( dla środowiska xfce )
http://pl.wikipedia.org/wiki/Terminal_%28Xfce%29

Tutaj jest większa lista
http://pl.wikipedia.org/wiki/Terminal_%28Xfce%29
ale brak na niej jeszcze sakura, roxterm, lxterminal
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

snajper_8383

  • Gość
Instalacja FreePascala
« Odpowiedź #8 dnia: 2013-12-29, 23:55:09 »
Cytat: Żabka
...jeśli dobrze rozumuję w Geany mogę napisać coś i ustawić żeby kompilowało? A napisany program będzie się otwierał?
Tak możesz napisać i ustawić aby się kompilowało.

Cytat: pkraszewski
Pascal jest martwy, zimny i sztywny jak Lenin.
Co masz na myśli? Projekt free pascal jest cały czas rozwijany, tak jak lazarus. Choć trudno się z tobą nie zgodzić z tym, że  lepiej poświęcić naukę na C++ z Qt i Pythona.

alvaro

  • Gość
Instalacja FreePascala
« Odpowiedź #9 dnia: 2013-12-30, 01:17:23 »
Możesz korzystać albo z IDE (np. Lazarus) albo z edytora tekstu (chociażby wspomnianego już Kate czy Geany).
To co Ciebie interesuje to kompilacja skrośna (cross-compilation). Stosowne informacje znajdziesz na wiki projektu freepascal oraz wiki projektu Lazarus.
Konieczne może okazać się również doinstalowanie mingw32 (i/lub mingw64 jeśli zależy Ci na kompilacji pod Win64).
Do uruchamiania programów możesz wykorzystać wine/wineconsole.
Ewentualnie możesz spróbować używać środowiska Lazarus pod WINE.

Przykładowy program

Aby stworzyć konsolową aplikację w Lazarusie należy z menu File wybrać New .... W nowo otwartym oknie z opcji które nas interesują mamy do wyboru Program oraz Console application. W tym drugim przypadku dostaniemy na start bardziej rozbudowany kod z m. in. obsługą przełączników i wyświetlaniem pomocy. Dla prostych programów konsolowych w zupełności wystarczy pierwsza opcja.

Przykładowy program Hello World:
program project1;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes
  { you can add units after this };

{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}

begin
  WriteLn('Hello World!');
  ReadLn;
end.
wklejka

Korzystając z linuksowej wersji Lazarusa (po uprzednim skonfigurowaniu FPC zgodnie z powyższymi wskazówkami) wystarczy w opcjach projektu wybrać docelową platformę i architekturę. W naszym przypadku są to odpowiednio Win32 i i386.


Options for Project: project1

Od tego momentu w ramach danego projektu będą budowane binaria EXE PE dla Windows zamiast natywnych ELF dla Linuksa:
$ file project1.exe
project1.exe: PE32 executable for MS Windows (console) Intel 80386 32-bit
Taki program możemy uruchomić przy użyciu wine:
$ wine project1.exe 
Hello World!
Można także użyć wineconsole:
$ wineconsole project1.exe

wineconsole project1.exe

Oczywiście nic nie stoi na przeszkodzie, żeby kompilować kod ręcznie:
$ fpc -MObjFPC -Scgi -O1 -Twin32 -Pi386 -g -gl -vewnhi -Fu. -l project1.lpr
Hint: Start of reading config file /etc/fpc.cfg
Hint: End of reading config file /etc/fpc.cfg
Free Pascal Compiler version 2.6.2 [2013/03/17] for i386
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling project1.lpr
Compiling resource /home/alvaro/apps/fpc_helloworld/project1.rc
Compiling resource project1.or
Linking project1.exe
18 lines compiled, 0.2 sec , 141136 bytes code, 27532 bytes data
2 hint(s) issued
wklejka

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3049
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Instalacja FreePascala
« Odpowiedź #10 dnia: 2013-12-30, 15:08:04 »
Cytat: snajper_8383
Cytat: pkraszewski
Pascal jest martwy, zimny i sztywny jak Lenin.
Co masz na myśli? Projekt free pascal jest cały czas rozwijany, tak jak lazarus. Choć trudno się z tobą nie zgodzić z tym, że  lepiej poświęcić naukę na C++ z Qt i Pythona.
Tak, FPC, Lazarus czy Delphi są dalej rozwijane. Co nie zmienia faktu, że ta technologia to programistyczny dead-end. Coś jak Cobol. Jest rozwijany, ale używany tylko w aplikacjach legacy, gdzie nikt nie ma odwagi (albo potrzeby, bo "it works") przepisać starego kodu na nowszy język. Albo Fortran, który też jest ciągle rozwijany, ale istnieje głównie dla bibliotek napisanych wieki temu i wypolerowanych na wysoki połysk przez pokolenia fizyków, chemików i matematyków (pozdrowienia dla OnaJużWieKogo).

Cytat: Żabka
Szkoła.
Łomatko. Jaka, jeżeli można spytać? Czy wygląda to na wybór szkoły/prowadzącego, czy też na jakieś narzucone z góry - spoza szkoły - wymagania programowe?

Cytat: snajper_8383
(...) że  lepiej poświęcić naukę na (...) Pythona.
I tu się zgadzam, Python jest doskonałym językiem "dydaktycznym". Można poćwiczyć i programowanie strukturalne i obiektowe. Można też poćwiczyć podstawy funkcjonalnego. Ma świetne PyQt do GUI. No i oczywiście jest wieloplatformowy. A na dodatek jest wykorzystywany i "w produkcji" i w zastosowaniach naukowych, więc da się go wykorzystać i po szkole.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Żabka

  • Gość
Instalacja FreePascala
« Odpowiedź #11 dnia: 2014-01-01, 20:34:23 »
Naprawdę baardzo Wam dziękuję za pomoc i cierpliwość.

@tele: Jednak nie skorzystałam z Twojej metody, bo jestem sierota i chyba nie umiem zainstalować pascala: pliki pascala ściągnięte i rozpakowane leżą sobie i możliwe nawet że jest zainstalowany, bo jak wpisuję sudo apt-get fp-ide to otrzymuję informację, że fp-ide jest już w najnowszej wersji. Więc pewnie jestem jeszcze większa sierota i nie umiem tego uruchomić...

@alvaro: próbowałam coś zdziałać Lazarusem jednak muszę się przyznać, że mnie przeraził. Za dużo okien, przycisków, opcji- mimo Twoich wskazówek zaczęłam się gubić. Za to Geany mnie przekonało i chyba tego będę używać. Muszę jeszcze znaleźć moduł Graph i chyba go doinstalować.

@pkraszewski: Liceum, wbrew pozorom- rozszerzona informatyka. Nie wiem dlaczego przerabiamy akurat Pascala, ale z tego co wiem nie tylko my.

Jeszcze raz bardzo dziękuję za odpowiedzi.

alvaro

  • Gość
Instalacja FreePascala
« Odpowiedź #12 dnia: 2014-01-01, 22:12:15 »
Lazarus jest bardzo podobnym IDE do Delphi, ale jeśli wolisz inne środowisko programistyczne czy edytor tekstu to nie ma sensu się męczyć z nim na siłę.

Poniższe polecenie powinno zwrócić informację, że pakiet fp-ide wymaga fp-ide-2.6.2:
apt-cache depends fp-ide
Jakie pliki zostały zainstalowane przez pakiet fp-ide-2.6.2 możesz sprawdzić poleceniem:
dpkg -L fp-ide-2.6.2
Jak łatwo zauważyć program którego szukasz kryje się pod nazwą fp.

Możesz sobie utworzyć skrót w menu. W tym celu stwórz odpowiedni plik *.desktop, np. /usr/share/applications/fp-ide.desktop czy ~/.local/share/applications/fp-ide.desktop o następującej treści:
[Desktop Entry]
Encoding=UTF-8
Name=FP IDE
Comment=FP IDE 2.6.2
Exec=fp
#Icon=lazarus
Terminal=true
Type=Application
Categories=Application;Development;
StartupNotify=true
Oczywiście możesz do tego celu użyć jakiegoś edytora menu, np. alacarte.

Zamiast tworzyć aktywator w menu możesz utworzyć go na pulpicie (~/Desktop/fp-ide.desktop).

Plik wynikowy

Jesteś pewna, że udało Ci się zbudować pliki wynikowe EXE?
To, że pliki mają rozszerzenie exe nie oznacza, że są to programy EXE PE dla Windows.
Najlepiej upewnij się i sprawdź typ pliku wynikowego za pomocą polecenia file:
file program.exe
Jeśli zwrócić coś w poniższym stylu to masz do czynienia z programem dla Windows.
program.exe: PE32 executable for MS Windows (console) Intel 80386 32-bit
Jeśli jednak otrzymasz wynik taki jak poniżej to znaczy, że otrzymałaś binarkę ELF dla systemu Linux.
program.exe: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, for GNU/Linux 2.4.0, stripped

Żabka

  • Gość
Instalacja FreePascala
« Odpowiedź #13 dnia: 2014-01-03, 16:23:42 »
@alvaro: Dzięki za zwrócenie uwagi, bo pokazuje się to drugie. Szukałam wczoraj, czy można coś z tym zrobić i doszłam do wniosku, że jak będę brała program do szkoły, to wezmę plik .pas, który skompiluję na miejscu, bo jeśli dobrze myślę, wtedy powinien się utworzyć windowsowy plik .exe. Chyba, że źle myślę.
W ostateczności mogę brać pendrive'a z LiveCD albo poszukać w pracowni komputera z Linuxem (bywały takie).

alvaro

  • Gość
Instalacja FreePascala
« Odpowiedź #14 dnia: 2014-01-03, 22:19:44 »
Cytat: Żabka
@alvaro: Dzięki za zwrócenie uwagi, bo pokazuje się to drugie. Szukałam wczoraj, czy można coś z tym zrobić i doszłam do wniosku, że jak będę brała program do szkoły, to wezmę plik .pas, który skompiluję na miejscu, bo jeśli dobrze myślę, wtedy powinien się utworzyć windowsowy plik .exe. Chyba, że źle myślę.
W ostateczności mogę brać pendrive'a z LiveCD albo poszukać w pracowni komputera z Linuxem (bywały takie).
Możesz tworzyć programy dla systemu Windows pod Linuksem. Służy do tego kompilacja skrośna. Pisałem o tym w pierwszym moim komentarzu w tym wątku (dziesiątym od góry).

Kompilacja skrośna

Jak już wcześniej wspomniałem, szczegółowe informacje znajdziesz na wiki projektu freepascal oraz wiki projektu Lazarus.

Postaram się w możliwie prosty sposób przybliżyć cały proces konfiguracji na dystrybucjach bazujących na Ubuntu, w szczególności Kubuntu.

Żeby nie wprowadzać zamieszania zalecam korzystać z pakietów dostępnych na stronie projektu Lazarus na sf.net zamiast tych dostępnych w repozytoriach danej dystrybucji.

Z tego powodu radzę usunąć najpierw dotychczas zainstalowane pakiety:
sudo apt-get remove fpc fpc-source lazarus
Zanim będziemy kontynuować najlepiej zaktualizujmy system:
sudo apt-get update
sudo apt-get upgrade
Możliwe, że zajdzie konieczność zainstalowania dodatkowych zależności (np. libgtk2.0-dev).
Możemy to zrobić już teraz:
sudo apt-get install libgtk2.0-dev
Wróćmy do FPC.
Odpowiednie paczki DEB można znaleźć na wspomnianej już stronie:
- dla systemu 32-bitowego
- dla systemu 64-bitowego

Załóżmy, że mamy system 32-bitowy.
Pobieramy (np. za pomocą wget) obowiązkowo pakiety fpc_2.6.2-0_i386.deb i fpc-src_2.6.2-0_i386.deb oraz opcjonalnie pakiet lazarus_1.0.14-0_i386.deb.

Następnie instalujemy pobrane wcześniej paczki:
sudo dpkg -i fpc_2.6.2-0_i386.deb fpc-src_2.6.2-0_i386.deb lazarus_1.0.14-0_i386.deb
Musimy sprawdzić gdzie zainstalowały się źródła:
$ dpkg -L fpc-src | head
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/fpc-src
/usr/share/doc/fpc-src/changelog.Debian.gz
/usr/share/doc/fpc-src/copyright
/usr/share/doc/fpc-src/changelog.gz
/usr/share/fpcsrc
/usr/share/fpcsrc/2.6.2
Przejdźmy do odpowiedniego katalogu:
cd /usr/share/fpcsrc/2.6.2
Powinien znajdować się tam plik Makefile:
$ ls /usr/share/fpcsrc/2.6.2
compiler  ide  installer  Makefile  Makefile.fpc  packages  rtl  tests  utils
Cały czas będąc w tym katalogu wykonajmy kolejno:
sudo make all OS_TARGET=win32 CPU_TARGET=i386
a następnie:
sudo make crossinstall OS_TARGET=win32 CPU_TARGET=i386
Musimy jeszcze edytować plik /etc/fpc.cfg.

Dla bezpieczeństwa utwórzmy najpierw jego kopię:
sudo cp /etc/fpc.cfg /etc/fpc.cfg.bak
Edytujemy go za pomocą np. nano:
sudo nano /etc/fpc.cfg
Musimy zamienić następujące trzy linie:
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl
na poniższe:
#-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
#-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
#-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl

#IFDEF win32
-Fu/usr/local/lib/fpc/$fpcversion/units/i386-win32/
-Fu/usr/local/lib/fpc/$fpcversion/units/i386-win32/*
-Fu/usr/local/lib/fpc/$fpcversion/units/i386-win32/rtl
-XPi686-mingw32-
-FD/usr/local/lib/fpc/$fpcversion
#ELSE linux
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/*
-Fu/usr/lib/fpc/$fpcversion/units/$fpctarget/rtl
#-Fu~/fpc/packages/*;~/fpc/rtl/linux
#ENDIF
/etc/fpc.cfg

W tym momencie zyskujemy możliwość kompilacji skrośnej za pomocą fpc.

Zamiast tworzyć binarkę ELF dla systemu Linux można - podając przełączniki -Twin32 -Pi386 - utworzyć plik wykonywalny EXE PE dla systemu Windows (32-bit):
$ fpc -Twin32 -Pi386 project1.pas
Free Pascal Compiler version 2.6.2 [2013/03/17] for i386
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling project1.pas
Linking project1.exe
16 lines compiled, 0.2 sec , 134128 bytes code, 27356 bytes data
$ file project1.exe
project1.exe: PE32 executable (console) Intel 80386 (stripped to external PDB), for MS Windows
$ fpc -MObjFPC -Scghi -O1 -Twin32 -Pi386 -g -gl -vewnhi -Fu. -l project1.pas
int: Start of reading config file /etc/fpc.cfg
Hint: End of reading config file /etc/fpc.cfg
Free Pascal Compiler version 2.6.2 [2013/03/17] for i386
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling project1.pas
Linking project1.exe
16 lines compiled, 0.2 sec , 141136 bytes code, 27532 bytes data
2 hint(s) issued
$ file project1.exe
project1.exe: PE32 executable (console) Intel 80386, for MS Windows
Geany

Jeśli nie chcesz używać rozbudowanego IDE takiego jak Lazarus to możesz korzystać chociażby z Geany.

Radzę do niego doinstalować dodatkowe wtyczki:
sudo apt-get install geany geany-plugins
Możesz ustawić odpowiednie opcje kompilacji w tym edytorze.
W tym celu mając otwarty plik źródłowy *.pas z menu Build wybierz Set Builds Commands.
W nowo otwartym oknie w polu Compile zamień:
fpc "%f"
na:
fpc -Twin32 -Pi386 "%f"


Od tego momentu będziesz mogła w prosty sposób budować program dla Windows wybierając opcję kompilacji z poziomu Geany (domyślnie wciskając po prostu F8).