Free Pascal :
Users’ manual


____________________________________________________________________
Users’ manual for Free Pascal, version 1.0.8
Document version 1.9
May 2003

Michaël Van Canneyt
Florian Klämpfl

____________________________________________________________________________
Contents
1 Introduction
 1.1 About this document
 1.2 About the compiler
 1.3 Getting more information.
2 Installing the compiler
 2.1 Before Installation : Requirements
 2.2 Installing the compiler.
 2.3 Optional configuration steps
 2.4 Before compiling
 2.5 Testing the compiler
3 Compiler usage
 3.1 File searching
 3.2 Compiling a program
 3.3 Compiling a unit
 3.4 Units, libraries and smartlinking
 3.5 Creating an executable for GO32V1 and PMODE/DJ targets
 3.6 Reducing the size of your program
4 Compiling problems
 4.1 General problems
 4.2 Problems you may encounter under DOS
5 Compiler configuration
 5.1 Using the command-line options
 5.2 Using the configuration file
 5.3 Variable substitution in paths
6 The IDE
 6.1 First steps with the IDE
 6.2 Navigating in the IDE
 6.3 Windows
 6.4 The Menu
 6.5 Editing text
 6.6 Searching and replacing
 6.7 The symbol browser
 6.8 Running programs
 6.9 Debugging programs
 6.10 Using Tools
 6.11 Project management and compiler options
 6.12 Customizing the IDE
 6.13 The help system
 6.14 Keyboard shortcuts
7 Porting Turbo Pascal Code
 7.1 Things that will not work
 7.2 Things which are extra
 7.3 Turbo Pascal compatibility mode
 7.4 A note on long file names under dos
8 Utilities that come with Free Pascal
 8.1 Demo programs and examples
 8.2 Supplied programs
9 Units that come with Free Pascal
 9.1 Standard units
 9.2 Under DOS
 9.3 Under Windows
 9.4 Under Linux
 9.5 Under OS/2
 9.6 Unit availability
10 Debugging your Programs
 10.1 Compiling your program with debugger support
 10.2 Using gdb to debug your program
 10.3 Caveats when debugging with gdb
 10.4 Support for gprof, the gnu profiler
 10.5 Detecting heap memory leaks
 10.6 Line numbers in run-time error backtraces
 10.7 Combining heaptrc and lineinfo
11 CGI programming in Free Pascal
 11.1 Getting your data
 11.2 Producing output
 11.3 I’m under Windows, what now ?
A Alphabetical listing of command-line options
B Alphabetical list of reserved words
C Compiler messages
 C.1 General compiler messages
 C.2 Scanner messages.
 C.3 Parser messages
 C.4 Type checking errors
 C.5 Symbol handling
 C.6 Code generator messages
 C.7 Errors of assembling/linking stage
 C.8 Unit loading messages.
 C.9 Command-line handling errors
 C.10 Assembler reader errors.
D Run time errors
E The Floating Point Coprocessor emulator
F A sample gdb.ini file
G Options and settings