Free Pascal の入手 |
---|
Free Pascal Win32のインストール |
---|
Free Pascal Win64のインストール |
---|
Free PascalのPATHの設定 |
---|
@ECHO OFF
REM
REM Free Pascal 環境変数設定。
REM
CALL resetpath.cmd
PATH C:\FPC\3.0.4\bin\i386-Win32;%PATH%
Microsoft Windows [Version 10.0.16299.371]
(c) 2017 Microsoft Corporation. All rightsreserved.
C:\PG>fpc
Free Pascal Compiler version 3.0.4 [2017/10/06] for i386
Copyright (c) 1993-2017 by FlorianKlaempfl and others
C:\FPC\3.0.4\bin\i386-Win32\fpc.exe[options] <inputfile> [options]
Only options valid for the default orselected platform are listed.
Put + after a boolean switch option toenable it, - to disable it.
@<x> Read compiler options from <x> inaddition to the default fpc.cfg
-a The compiler does not delete thegenerated assembler file
-al List sourcecode lines inassembler file
-an List node info inassembler file (-dEXTDEBUG compiler)
-ao Add an extra option toexternal assembler call (ignored forinternal)
-ar List register allocation/release info in assembler file
-at List temp allocation/release info in assembler file
-A<x> Output format:
-Adefault Use default assembler
-Aas Assemble using GNU AS
-Amacho Mach-O (Darwin, Intel 32bit) using internal writer
-Anasm Assemble using Nasm
-Anasmcoff COFF (Go32v2) file usingNasm
-Anasmelf ELF32 (Linux) file usingNasm
-Anasmwin32 Win32 object file usingNasm
-Anasmwdosx Win32/WDOSX object fileusing Nasm
-Anasmdarwin macho32 object fileusing Nasm (experimental)
*** press enter ***
Free PascalのHollo, world. (その1) |
---|
{ Free PascalのHello, world.(日本語版) } program Hello; {$MODE OBJFPC} {$CODEPAGE UTF8} {$LONGSTRINGS ON} uses SysUtils; begin WriteLn(Output, '世界よ、こんにちは。') end.
C:\PG>CD FreePascal\Hello
C:\PG\FreePascal\Hello>fpc -Twin32 -Pi386 -Ciort -oHello.exe Hello.pp
Free Pascal Compiler version 3.0.4 [2017/10/06] for i386
Copyright (c) 1993-2017 by FlorianKlaempfl and others
Target OS: Win32 for i386
Compiling Hello.pp
Linking Hello.exe
14 lines compiled, 0.7 sec, 64544 bytescode, 4100 bytes data
C:\PG\FreePascal\Hello>Hello
世界よ、こんにちは。
C:\PG\FreePascal\Hello>
C:\PG\FreePascal\Hello>fpc -Twin64 -Px86_64 -Ciort -oHello.exe Hello.pp
Free Pascal Compiler version 3.0.4 [2017/10/06] for x86_64
Copyright (c) 1993-2017 by FlorianKlaempfl and others
Target OS: Win64 for x64
Compiling Hello.pp
Linking Hello.exe
14 lines compiled, 0.5 sec, 71344 bytescode, 4900 bytes data
C:\PG\FreePascal\Hello>Hello
世界よ、こんにちは。
C:\PG\FreePascal\Hello>
Free PascalのHollo, world. (その2) |
---|
{=============================================================================} {= プログラム:Hello2 =} {=============================================================================} program Hello2; {$MODE OBJFPC} {$CODEPAGE UTF8} {$LONGSTRINGS ON} uses SysUtils, SayHelloUnit; { SayHelloUnit の利用 } begin SayHelloEng(Output); { SayHelloUnit の SayHelloEng の呼び出し } SayHelloJpn(Output); { SayHelloUnit の SayHelloJpn の呼び出し } end.
{=============================================================================} {= ユニット:SayHelloUnit =} {=============================================================================} unit SayHelloUnit; {$MODE OBJFPC} {$CODEPAGE UTF8} {$LONGSTRINGS ON} {=============================================================================} {= 【インターフェース部】 =} {=============================================================================} interface uses SysUtils; procedure SayHelloEng(var F : Text); procedure SayHelloGmn(var F : Text); procedure SayHelloJpn(var F : Text); {=============================================================================} {= 【実現部】 =} {=============================================================================} implementation { 英語 } procedure SayHelloEng(var F : Text); begin WriteLn(F, 'Hello, World.'); end; { ドイツ語 } procedure SayHelloGmn(var F : Text); begin WriteLn(F, 'Hallo, Welt.'); end; { 日本語 } procedure SayHelloJpn(var F : Text); begin WriteLn(F, '世界よ、こんにちは。'); end; end.
# # Hello2 の メイクファイル # MAIN = Hello2 UNIT1 = SayHelloUnit # Target Win32 FPCFLAGS = -Twin32 -Pi386 -Ciort # Target Win64 #FPCFLAGS = -Twin64 -Px86_64 -Ciort $(MAIN).exe : $(MAIN).pp $(UNIT1).ppu @rm -f $(MAIN).o fpc $(FPCFLAGS) -o$(MAIN).exe $(MAIN).pp $(UNIT1).ppu : $(UNIT1).pp @rm -f $(UNIT1).o $(UNIT1).ppu fpc $(FPCFLAGS) $(UNIT1).pp clean : rm -f $(MAIN).exe $(MAIN).o $(UNIT1).o $(UNIT1).ppu
C:\PG>CD FreePascal\Hello2
C:\PG\FreePascal\Hello2>make
fpc -Twin32 -Pi386 -Ciort SayHelloUnit.pp
Free Pascal Compiler version 3.0.4 [2017/10/06] for i386
Copyright (c) 1993-2017 by FlorianKlaempfl and others
Target OS: Win32 for i386
Compiling SayHelloUnit.pp
51 lines compiled, 0.1 sec
fpc -Twin32 -Pi386 -Ciort -oHello2.exeHello2.pp
Free Pascal Compiler version 3.0.4 [2017/10/06] for i386
Copyright (c) 1993-2017 by FlorianKlaempfl and others
Target OS: Win32 for i386
Compiling Hello2.pp
Linking Hello2.exe
20 lines compiled, 0.1 sec, 64656 bytescode, 4100 bytes data
C:\PG\FreePascal\Hello2>Hello2
Hello, World.
世界よ、こんにちは。
C:\PG\FreePascal\Hello2>
C:\PG\FreePascal\Hello2>make clean
rm -f Hello2.exe Hello2.o SayHelloUnit.oSayHelloUnit.ppu
C:\PG\FreePascal\Hello2>