Development
Free Pascal is always under development. When you want to see how the development is progressing you can take a peek at the developer versions.
Note: There is no support for the development versions.
You have the following options:
- Download Daily Source Snapshot of Development Tree (version 2.1.x)
- Download Daily Source Snapshot of Release Tree (version 2.0.x)
- Download Daily Update of Development Tree (version 2.1.x)
- Connect to Source Repository with SVN
- Bugs and the Future
Download Daily Source Snapshot of Development Tree (version 2.1.x)
You can download todays development (v2.1.x) sources in form of a packed snapshot from the SVN source repository: these snapshots are updated on a daily basis, and reflect the state of the source repository. The files are kept at the site which has the SVN archive.
Entire public sources archive of v2.1.x: fpc.zip (24 MB)
Download Daily Source Snapshot of Release Tree (version 2.0.x)
You can download todays development (v2.0.x) sources that will lead to the next stable release in form of a packed snapshot from the SVN source repository: these snapshots are updated on a daily basis, and reflect the state of the source repository. The files are kept at the site which has the SVN archive.
Entire public sources archive of v2.0.x: fpc.zip (24 MB)
Download Daily Update of Development Tree (version 2.1.x)
These snapshots contain the latest development updates and bug fixes. There is no guarantee that the new development updates are fully working and that the snapshot is bugfree.
The files are available from the Freepascal ftp site.
Download Daily Update of Release Tree (version 2.0.x)
These snapshots contain the latest bug fixes, without any major new feature. This should be more stable than the development snapshots (and even the last official release), but there is still no guarantee that these snapshots are bugfree.
The files are available from the Freepascal ftp site.
Connect to Source Repository with SVN
As an alternative to the daily zip files of the SVN sources, the SVN repository has been made accessible for everyone, with read-only access. This means that you can directly access the code, and you will have really the last-minute sources available. It is also a method which requires less bandwidth once you have done the first download (checkout in SVN lingo).
Together with the release of version 2.0, FPC has migrated to SVN. For now, there is no CVS mirror yet, so you've to use SVN to get the FPC sources.
Development snapshots
How to do this? Generally, you need 3 steps:
(If you have SVN installed, of course. Look here for instructions on
how to do that.)
- To retrieve the full fpc source repository,
type
svn checkout http://svn.freepascal.org/svn/fpc/trunk fpc
This will create a directory fpc in your SVN repository directory, containing subdirectories with the following packages:- rtl, the RunTime Library source for all platforms.
- compiler, the compiler source.
- fcl, the Free Component Library source.
- packages, Packages source (contains gtk, ncurses, mysql and many more)
- utils, the utils sources.
- fv, Free Vision
- tests, the compiler and RTL tests.
- ide, the IDE sources.
- installer, the text mode installer sources.
svn checkout http://svn.freepascal.org/svn/fpc/trunk/rtl fpc/rtl
Normally, you should perform this step just once.
- To update the sources which were downloaded (checkout) above
svn update fpc
orsvn update fpc/rtl
if you only downloaded some separate packages, the rtl sources in this case.
This will retrieve patches ONLY for the files that have changed.
This step you can repeat whenever you want to update your sources. It is by far the most economic in terms of bandwidth.
Fixes to 2.0.x
The fixes need a separate directory, create a separate directory fixes, enter it, and repeat the above checkout command with the URL http://svn.freepascal.org/svn/fpc/branches/fixes_2_0:
cd mysvn/fixes svn checkout http://svn.freepascal.org/svn/fpc/branches/fixes_2_0 fpcand to update:
svn update fpc
To checkout release, you've to checkout the tagged versions, e.g. svn checkout http://svn.freepascal.org/svn/fpc/tags/release_2_0_2 fpc
The sources of docs are in a separate repository called fpcdocs, so the command to get them is
svn checkout http://svn.freepascal.org/svn/fpcdocs/trunk fpcdocs
If you want to learn more about subversion, read this excellent Subversion book which is also available online in different formats for free.
Other repositories
The fpc svn server hosts more repositories than only the fpc repository, you can get them by svn co http://svn.freepascal.org/svn/<repository> where <repository> is:fpcprojects Several fpc related projects like a converted TTT 5.10, gdbpas or the FPC irc bot.
lazarus Lazarus.
fpcdocs The fpc documentation sources.
html The sources of the fpc website you're just browsing.
fpcbuild Everything needed to build fpc releases. This links to several other repositories, so this checkout is really big.
logs Log files of the repositories mentioned above.
Browse the Source Repository with a Web Browser
The contents of the SVN archive can also be browsed with your web-browser through this viewcvs interface.
Bugs and the Future
A list of known bugs is available here.
And the future plans of Free Pascal can be viewed here.
If you're interested in FPC development, you might be also interested in the
wiki.