FPC 3.0.0 RC2 Released! lazarus / 60-Free Pascal ---------------------------------------------------------------------- marcov · 2015-10-27 19:37 Hello We have placed the second release candidate of the Free Pascal Compiler version 3.0.0 on our ftp servers. Most important change since the first release candidate is a change in the unicode resource-string handling. Also there is a new Windows to Android cross-compiler installer. You can help improve the upcoming 3.0.0 release by downloading and testing this release. If you want you can report what you have done here: http://wiki.freepascal.org/Testers_3.0.0 New features are listed at http://wiki.freepascal.org/FPC_New_Features_3.0 Changes that may break backwards compatibility are documented at http://wiki.freepascal.org/User_Changes_3.0.0 Issues with this release candidate that we already know of are listed in the wiki: http://wiki.freepascal.org/Issues_3.0.0 A preview of the 3.0.0 docs is available at http://www.freepascal.org/docs-html/3.0.0/ Downloads are available at: * ftp://gd.tuwien.ac.at/languages/pascal/fpc/beta/3.0.0-rc2 * ftp://ftp.freepascal.org/pub/fpc/beta/3.0.0-rc2 * ftp://freepascal.stack.nl/pub/fpc/beta/3.0.0-rc2 Enjoy! The Free Pascal Compiler Team                              Free Pascal Compiler                               Version 3.0.0-rc2 ********************************************************************** ****** * Introduction ********************************************************************** ****** Please also read the platform specific README file, if it exists. This package contains an advanced freeware 32-bit/64-bit/16-bit pascal compiler for several platforms. The language and the runtime library are almost compatible with Turbo Pascal 7.0 and recent Delphi releases. There is also partial support for the Macintosh pascal dialect. News and changes related to this release are described in whatsnew.txt. Free Pascal 3.0.0 is currently available for the following platforms: - Linux-i386 - Linux-x86_64 (amd64) - Linux-powerpc - Linux-sparc - Linux-ARM - Win32-i386 (2000/XP, WinNT or later) - Win64-x86_64 (XP or later) - Wince-ARM (cross compiled from win32-i386) - FreeBSD-i386 - FreeBSD-x86_64 - Mac OS X/Darwin for PowerPC (32 and 64 bit) - Mac OS X/Darwin for Intel (32 and 64 bit) - iOS (ARM and AArch64/ARM64) and iPhoneSimulator (32 and 64 bit) - OS/2-i386 (OS/2 Warp v3.0, 4.0, WarpServer for e-Business and eComStation) - Haiku-i386 - GO32v2-i386 - Nintendo Gameboy Advance-ARM (cross compile from win32-i386) - Nintendo DS-ARM (cross compile from win32-i386) - Nintendo Wii-powerpc (cross compile from win32-i386) - AIX 5.3 and later for PowerPC (32 and 64 bit) - Java JVM (1.5 and later) and Android Dalvik (Android 4.0 and later) - Android (ARM, i386, MIPS) via cross-compiling. - MS-DOS-i8086 (cross compiled from win32-i386 and Linux) - Amiga, MorphOS and AROS There are other platforms (like other BSD variants) which are more or less working, but there is currently no maintainer for them and thus we cannot provide adequate support. If you want to change this and create and maintain versions for other platforms and targets, feel free to contact us, e-mail addresses are listed below. ********************************************************************** ****** * Features ********************************************************************** ****** - high speed compiler - fully 16, 32 or 64-bit code    - 32 bit compiler can be used on x86_64 Linux distributions to compile      32 bit applications - language features:    - almost fully compatible with Borland Pascal and Borland Delphi    - ansi strings    - wide strings    - exception support    - RTTI support    - procedure overloading    - generics (experimental)    - operator overloading    - COM, CORBA and raw interfaces support    - dynamic array support    - variant support    - inlining - code optimizer:    - peephole optimizer (80x86 only)    - jump optimizer    - loading of variables into registers    - assembler level dataflow analyzer (80x86 only)    - stack frame eliminations    - sophisticated register allocator - integrated BASM (built-in assembler) parser    - supports ATT syntax used by GNU C    - supports Intel syntax used by Turbo Pascal (80x86-only) - can compile code into assembler source code for these assemblers:    - GNU Assembler (GAS)    - Netwide assembler (Nasm)    - Microsoft Assembler/Turbo Assembler (Masm/Tasm)    - Watcom assembler (wasm) - internal assembler for ultra fast object file generation - can call external C code    - h2pas utility to convert .h files to Pascal units - smart linking (also known as dead code stripping) - support for the GNU debugger - integrated development environment (disabled by default on Mac OS X)    - powerful user friendly Wordstar compatible multi file editor    - context sensitive help supports help files in HTML, Windows HLP and      Borland TPH format.    - debugger on most platforms - can create binaries running natively under both DOS and OS/2 (EMX version) - no need for Linux distribution specific binaries, programs you write run    on all distributions - high quality documentation ********************************************************************** ****** * Minimum requirements ********************************************************************** ****** Processor:    i386, x86_64, PowerPC, ARM, MIPS, i8086, Motorola 68k, Sparc or JVM    runtime Win32:   - MS Windows NT/2000/XP or later (Win95, 98 and ME are not supported     in FPC officially any longer).   - 16 MB RAM OS/2:   - OS/2 Warp v3.0 with one of late fixpaks - FP 35 should be fine,     OS/2 Warp v4.0 with FP 5 and above, WSeB, MCP or any eComStation version     (OS/2 2.0/2.1 currently not supported, not even for compiled programs).   - Certain features (e.g. Unicode support in the RTL) require proper support     only available in later OS/2 versions (at least OS/2 Warp 4.0 FP14),     otherwise the functionality may be limited (but the binaries still work     even on the older versions, albeit with some limitations). Linux:   - system running a 2.4.x kernel FreeBSD: - There are separate releases for FreeBSD 7.x system or 8.x system. The code      works on 6.x too. Older versions might need specific adaptations. Mac OS X:   - Mac OS X 10.4 and higher ********************************************************************** ****** * Quick start - Win32 ********************************************************************** ****** Download the distribution package (fpc-3.0.0.i386-win32.exe) and run it - it is a self-extracting installer, so just follow the instructions to install it. The installer should set the PATH environment variable as appropriate. To test the compiler, change to the demo\texts directory of the FPC tree and type on the command line:          fpc hello          hello ********************************************************************** ****** * Quick start - DOS ********************************************************************** ****** Download distribution archive (dos300.zip for GO32v2) and unzip it into a temporary directory. Start the install program INSTALL.EXE and follow the instructions. Don't forget to set PATH as mentioned by the install program. If running under plain DOS, this can be done by opening file named AUTOEXEC.BAT located in the root directory of your boot drive (usually C:\) with a plain text editor (like EDIT.COM), extending the line starting with "set PATH=" (case insensitive) with path to newly installed binaries (installation root as selected in the installation program appended with "\BIN\GO32v2") and save it. To test the compiler, change to the demo\texts directory of the FPC tree and type          fpc hello          hello ********************************************************************** ****** * Quick start - OS/2 / eComStation ********************************************************************** ****** Download distribution archive (os2300.zip for OS/2 or eComStation) and unzip it into a temporary directory. Start the install program INSTALL.EXE and follow the instructions. Don't forget to set PATH and LIBPATH as mentioned by the install program. This can be done by opening file named CONFIG.SYS located in the root directory of your boot drive (e.g. C:\) with a plain text editor (e.g. E.EXE), extending the lines starting with "set PATH=" and "LIBPATH=" (both are case insensitive) with path to newly installed binaries (installation root as selected in the installation program appended with "\BIN\OS2" for PATH and "\DLL" for LIBPATH) and save it again as a plain text file. Note that changes to LIBPATH require restart of your machine in order to come into effect. To test the compiler, change to the demo\texts directory of the FPC tree and type          fpc hello          hello ********************************************************************** ****** * Quick start - Linux/FreeBSD ********************************************************************** ****** Download fpc-3.0.0.-.tar and untar into a temporary directory. Start the install script with ./install.sh and follow the instructions. To test the compiler, change to the demo/texts directory of the FPC tree and type          fpc hello          hello ********************************************************************** ****** * Quick start - Mac OS X/Darwin ********************************************************************** ****** The Xcode command line tools must be installed before FPC is installed. See the download page for more information (the method changes with almost every new Xcode and/or Mac OS X release, so the information in this readme is usually out of date). There are two methods to install Free Pascal for Mac OS X. 1) Download and install the Mac OS X installer package 2) Install fpc using fink This second method additionally includes a text mode IDE, which partly works using XQuartz xterm. After installing the package, you can write your source code in your favorite editor (including Project Builder and XCode). To compile something, go to the directory containing your source files in Terminal and type:          fpc name_of_your_source_file The compiler only accepts one file name as argument, but will automatically search for and compile any units used by the specified source file. Run "fpc" without any arguments to get an overview of the possible command line options. ********************************************************************** ****** * Documentation ********************************************************************** ****** The documentation is available as HTML pages, PDF, PS, and text although the recommended format is pdf. The latest PDF version is available on ftp://ftp.freepascal.org/fpc/dist/docs-pdf/, other formats are available for download in the directory of the respective distributed release. NB that there is at present no FPC specific documentation for the platform specific API (like Win32 system functions, etc.). There is a note in the ftp /doc explaining where MS help file documenting Win32 API can be obtained, other platforms (especially Unix-based ones) often come with this documentation included in system installation. ********************************************************************** ****** * Suggestions, Help, Bug reporting, snapshots,  ... ********************************************************************** ****** Suggestions, Help ... --------------------- e-mail: fpc-devel@lists.freepascal.org (bugs, developer related questions) e-mail: fpc-pascal@lists.freepascal.org (general pascal related questions) Both these adresses are for mailing lists. If you're not subscribed, be sure to mention this fact when sending questions to these lists, so that people sending answers know about it and send you a copy. Information about available lists and subscription can be found on http://lists.freepascal.org/mailman/listinfo Combined with Lazarus, an IDE for the Free Pascal Compiler: Web forum: http://forum.lazarus.freepascal.org (all questions) Wiki: http://wiki.freepascal.org WWW: http://www.freepascal.org FTP: ftp://ftp.freepascal.org/fpc (several mirrors exist, see website for links) Additional information about mailing lists, news, future plans etc. can be found on the web site. SNAPSHOTS & SOURCES ------------------- One of the features of FPC is the snapshots. These are made daily or weekly from the developers' latest versions of the source. Snapshots are available for GO32v2, Win32, OS/2 and Linux versions. The latest snapshots are in: ftp://ftp.freepascal.org/fpc/snapshot/ in appropriately named .zip/tar files. You will also normally find in the snapshot archive file a readme, with a note about the latest included changes. It is quite common, though it doesn't always happen, that when a bug is reported it is fixed and a fixed version can be obtained the NEXT day in the appropriate snapshot.... yes really! Also on the ftp site you'll find a /dist directory, with the latest distributed releases, a /docs directory, and a /snapshot//source directory, in which every night at about 0100 GMT the latest source generated by the developers during the day & evening before is exported from SVN into ZIP file fpc.zip. Making your own snapshots ------------------------- By downloading the /source files (makefiles are included) it is possible to make your own version of the fpc compiler/rtl and to modify it. You are of course free to do this so as long as you observe the licence conditions. In order to make the compiler/rtl & IDE in a resonable time (eg <30 minutes) you'll need at least 32 MB of physical memory (64 MB is better), at least a 200 MHz processor and at least 100 MB of free disk space. You'll also need some knowledge of makefiles & programming... it is not difficult but it isn't easy either! REPORTING BUGS ---------------- If you find a bug in the released version, you may want to try a snapshot (see SNAPSHOTS above) to see if it has been fixed before reporting it to the fpc-devel mailing list. If you find a fault or 'feature' in a release, please report it either using the bug reporting interface at http://bugs.freepascal.org, or to the fpc-devel mailing list. PLEASE ALWAYS INCLUDE A COMPILABLE CODE FRAGMENT that can be used to reproduce the problem (or a link to larger archive if it cannot be reproduced with small example). Also state the FPC version, target platform (Win32, Linux, ...), operating system version (XP, Ubuntu 12.04, ...), the used compiler options and any other useful info so the developers can reproduce the problem. Otherwise they may not be able to fix it. ********************************************************************** ****** * License ********************************************************************** ****** The compiler and most utilities and executables distributed in this package fall under the GPL, for more information read the file COPYING.v2. Some specific utilities and programs come under the license described in COPYING.v3, COPYING.DJ, COPYING.EMX, COPYING.RSX and licensez.ip. FPC for JVM comes with some third party tools which are convered by the following licenses:    - jasmin.jar comes under the license described in jasminli.txt    - bcel-6.0-SNAPSHOT.jar comes under the Apache 2.0 license, described by      apache2.txt Portions of FPC are based on libffi. See libffi.txt for the license of that code. Some of the licenses of the third party tools require to make the source available. If you cannot find the sources or information where to find them for a certain tool under such a license included into the FPC distribution, please contact us through the contact details given at http://www.freepascal.org/moreinfo.var and we will provide you the sources or information where to find them. The documentation, unless otherwise noted, is distributed as free text, and is distributed under the GNU Library General Public License as found in file COPYING. The runtime library, package libraries, free component library, and other libraries which are used to create executables by the compiler come under a modified GNU Library General Public license. Additional information about the library license is found in COPYING.FPC. License conditions for DPMI provider for GO32v2 version (CWSDPMI.EXE) can be found in cwsdpmi.txt, sources and/or binary updates may be downloaded from http://clio.rice.edu/cwsdpmi/. The DOS version (go32v2) contains some binaries of DJGPP. You can obtain the full DJGPP package at: http://www.delorie.com/djgpp/ NOTE: OS/2 version of the installer uses the library UNZIP32.DLL from        Info-ZIP. Info-ZIP's software (Zip, UnZip and related utilities)        is free and can be obtained as source code or executables from        Internet/WWW sites, including http://www.info-zip.org. ---------------------------------------------------------------------- valdir.marcos · 2015-10-28 03:45 I know it is just an estimate. Actual duration may vary with many factors: http://wiki.freepascal.org/FPC_Release_Schedule Lazarus 1.4 was branched in 11 Jan 2015 and released in 19 Apr 2015. http://bugs.freepascal.org/roadmap_page.php Lazarus - 1.6 (Scheduled For Release 2016-02-01) may also take months from branch to release just like happened to Lazarus 1.4. http://bugs.freepascal.org/roadmap_page.php?project_id=1 After FPC 3.0 final is released, would we have a bigger probability of a new version of Lazarus 1.4.6/1.4.8 + FPC 3.0 or Lazarus 1.6.0/2.0.0 + FPC 3.0? ---------------------------------------------------------------------- mischi · 2015-10-28 07:09 Although I would also like to know this, I think, there are simply too many unknowns to make any reliable prediction. I assume that RC2 of fpc-3.0.0 is not far from the final release and could be used for trying to build lazarus. MiSchi ---------------------------------------------------------------------- JuhaManninen · 2015-10-28 10:22 Quote from: valdir.marcos on October 28, 2015, 04:45:18 amAfter FPC 3.0 final is released, would we have a bigger probability of a new version of Lazarus 1.4.6/1.4.8 + FPC 3.0 or Lazarus 1.6.0/2.0.0 + FPC 3.0? Lazarus 1.4.6/1.4.8 no. There are many Unicode related issues involved. We try to solve them with the new UTF-8 system as much as possible, but it still breaks old code in some situations. But hey, it should not be a problem for you because you can install FPC 3.0 (or the RC versions) and compile Lazarus using it. ---------------------------------------------------------------------- taazz · 2015-10-28 12:43 how about Quote from: JuhaManninen on October 28, 2015, 11:22:32 amQuote from: valdir.marcos on October 28, 2015, 04:45:18 amAfter FPC 3.0 final is released, would we have a bigger probability of a new version of Lazarus 1.4.6/1.4.8 + FPC 3.0 or Lazarus 1.6.0/2.0.0 + FPC 3.0? Lazarus 1.4.6/1.4.8 no. There are many Unicode related issues involved. We try to solve them with the new UTF-8 system as much as possible, but it still breaks old code in some situations. But hey, it should not be a problem for you because you can install FPC 3.0 (or the RC versions) and compile Lazarus using it. since its so easy then how about back porting a couple of bug fixes or components to 1.4.4 add fpc 3 and name it 1.4.6 before stabilizing the utf8 port and lazarus 2.0? ---------------------------------------------------------------------- JuhaManninen · 2015-10-28 13:00 Quote from: taazz on October 28, 2015, 01:43:45 pmsince its so easy then how about back porting a couple of bug fixes or components to 1.4.4 add fpc 3 and name it 1.4.6 before stabilizing the utf8 port and lazarus 2.0? Yes, backporting Unicode related fixes should be OK. Releasing a Lazarus dot maintenance version with the new FPC 3.0 would however break too many things. Proposed fixes to be merged can be added under "Submitted by others" here :   http://wiki.freepascal.org/Lazarus_1.4_fixes_branch ---------------------------------------------------------------------- Deepaak · 2015-10-28 13:14 awesome, eagerly waiting for final release. ---------------------------------------------------------------------- valdir.marcos · 2015-10-28 16:25 Quote from: JuhaManninen on October 28, 2015, 11:22:32 amLazarus 1.4.6/1.4.8 no. There are many Unicode related issues involved. We try to solve them with the new UTF-8 system as much as possible, but it still breaks old code in some situations. Quote from: JuhaManninen on October 28, 2015, 02:00:51 pmQuote from: taazz on October 28, 2015, 01:43:45 pmsince its so easy then how about back porting a couple of bug fixes or components to 1.4.4 add fpc 3 and name it 1.4.6 before stabilizing the utf8 port and lazarus 2.0? Yes, backporting Unicode related fixes should be OK. Releasing a Lazarus dot maintenance version with the new FPC 3.0 would however break too many things. So, we would better keep on trunk (FPC 3.1 and Lazarus 1.5) for new projects until FPC 3.0 and Lazarus 1.6/2.0 are released? ---------------------------------------------------------------------- JuhaManninen · 2015-10-28 17:02 Quote from: valdir.marcos on October 28, 2015, 05:25:03 pmSo, we would better keep on trunk (FPC 3.1 and Lazarus 1.5) for new projects until FPC 3.0 and Lazarus 1.6/2.0 are released? I would recommend FPC 3.0 or this RC2 version together with Lazarus trunk if you are interested in its new Unicode support. If you are interested in latest development in FPC then of course you should use its trunk version, too. ---------------------------------------------------------------------- taazz · 2015-10-28 17:30 Quote from: JuhaManninen on October 28, 2015, 02:00:51 pmQuote from: taazz on October 28, 2015, 01:43:45 pmsince its so easy then how about back porting a couple of bug fixes or components to 1.4.4 add fpc 3 and name it 1.4.6 before stabilizing the utf8 port and lazarus 2.0? Yes, backporting Unicode related fixes should be OK. Releasing a Lazarus dot maintenance version with the new FPC 3.0 would however break too many things. Proposed fixes to be merged can be added under "Submitted by others" here :   http://wiki.freepascal.org/Lazarus_1.4_fixes_branch Erm I was just being greedy with the back port comment I did not expect anything to come out of it. What it would break to take 1.4.4 as is snap it the brand new fpc 3.0 release and make an 1.4.6 release with out enabling the "unicode" mode, just the way it is now. If it is simple for us to replace fpc 2.6.4 with 3.0 then creating a new version should be easy too, that would allow all component developers to test for a specific version making their life a bit easier (or not) from supporting every vanilla custom build out there. ---------------------------------------------------------------------- JuhaManninen · 2015-10-28 18:27 Quote from: taazz on October 28, 2015, 06:30:36 pmIf it is simple for us to replace fpc 2.6.4 with 3.0 then creating a new version should be easy too, ... Sure it would be easy to create such version but it would have nasty bugs. FPC 3.0 has a new codepage aware string type. It does not work well with LCL directly. That's why FPC team has kindly provided a system to switch the default encoding to UTF-8 and it works better than we expected in most situations. Some code however depends on Windows system encoding so much that the new system cannot be used. I have made a new wiki page to list problems and their solutions in such case:   http://wiki.freepascal.org/Lazarus_with_FPC3.0_without_UTF-8_mode In fact I understood that we need to support system codepage with FPC 3.0+ mostly because of feedback from you and some other people. I am a little surprised now that you don't seem to understand the issue at all. Anyway, we need help to find solutions and update the new wiki page. Also your help would be appreciated. ---------------------------------------------------------------------- taazz · 2015-10-28 21:10 Quote from: JuhaManninen on October 28, 2015, 07:27:19 pmQuote from: taazz on October 28, 2015, 06:30:36 pmIf it is simple for us to replace fpc 2.6.4 with 3.0 then creating a new version should be easy too, ... Sure it would be easy to create such version but it would have nasty bugs. FPC 3.0 has a new codepage aware string type. It does not work well with LCL directly. That's why FPC team has kindly provided a system to switch the default encoding to UTF-8 and it works better than we expected in most situations. Some code however depends on Windows system encoding so much that the new system cannot be used. I have made a new wiki page to list problems and their solutions in such case:   http://wiki.freepascal.org/Lazarus_with_FPC3.0_without_UTF-8_mode Ok you do see the problem here right? Quote from: JuhaManninen on October 28, 2015, 07:27:19 pmIn fact I understood that we need to support system codepage with FPC 3.0+ mostly because of feedback from you and some other people. I am a little surprised now that you don't seem to understand the issue at all. Anyway, we need help to find solutions and update the new wiki page. Also your help would be appreciated. There multiple issues here to understand lets just assume for now that I do not understand any of the issues, what I have to do see those problems in my IDE and where can I get the test cases (not code necessarily although most welcomed). I took a look on the meta group you mentioned and most of those bugs seem minor. testing time again I guess oh well. ---------------------------------------------------------------------- valdir.marcos · 2015-10-29 05:18 Quote from: JuhaManninen on October 28, 2015, 06:02:58 pmQuote from: valdir.marcos on October 28, 2015, 05:25:03 pmSo, we would better keep on trunk (FPC 3.1 and Lazarus 1.5) for new projects until FPC 3.0 and Lazarus 1.6/2.0 are released? I would recommend FPC 3.0 or this RC2 version together with Lazarus trunk if you are interested in its new Unicode support. If you are interested in latest development in FPC then of course you should use its trunk version, too. I would prefer to use Lazarus and FPC stable versions, but for now I am using trunk versions because of some fixes related to Firebird and SEH that are present in FPC 3.0 such as: Structured Exception Handling (SEH): http://forum.lazarus.freepascal.org/index.php/topic,23815.msg142723.ht ml#msg142723 Big varchar fields are truncated (not saved completly) on Firebird and Postgre: http://forum.lazarus.freepascal.org/index.php/topic,24962.msg159736.ht ml#msg159736 http://bugs.freepascal.org/view.php?id=26068 To me up to now, Unicode support is important, but not essential. What I need most is the bunch of fixes and other improvements present in FPC 3.0. http://wiki.freepascal.org/FPC_New_Features_3.0 @marcov, @JuhaManninen and @taazz: Thanks for all information and for your patience. ---------------------------------------------------------------------- valdir.marcos · 2015-11-20 16:12 Was FPC 3.0.0 tagged as final on 2015-11-12? http://wiki.freepascal.org/FPC_Release_Schedule http://svn.freepascal.org/svn/fpc/tags/release_3_0_0/compiler/version. pas ---------------------------------------------------------------------- marcov · 2015-11-20 16:26 Quote from: valdir.marcos on November 20, 2015, 05:12:42 pmWas FPC 3.0.0 tagged as final on 2015-11-12? 3.0.0 is tagged, and release should be near, very near. ---------------------------------------------------------------------- valdir.marcos · 2015-11-20 16:43 Quote from: marcov on November 20, 2015, 05:26:15 pmQuote from: valdir.marcos on November 20, 2015, 05:12:42 pmWas FPC 3.0.0 tagged as final on 2015-11-12? 3.0.0 is tagged, and release should be near, very near. After FPC 3.0.0 is released, Lazarus 1.4.6 + FPC 2.6.4 should be the last one of the Lazarus 1.4.x series? ---------------------------------------------------------------------- zeljko · 2015-11-20 18:04 Yes ---------------------------------------------------------------------- Bitbeisser · 2016-01-23 21:58 Quote from: arneolav on January 17, 2016, 06:16:49 pmDateUtils LocalTimeToUniversal and UniversalTimeToLocal FPC issue fixed in r31356 (FPC trunk). Still problem in RC2, Hope you can merge it into 3.0 branch. 3.0 final was release on November 25th, 2015, why are you still posting abut RC2 issues?  Ralf ---------------------------------------------------------------------- lazer · 2017-10-06 08:10 While I can see a lot of reasons for limiting the number of variable conditions for working on trunk, this seems to be persistent beyond trunk. Fedora 26 is currently distributing 3.0.2  that was announced as a "point release", whatever that term signifies. I wish to install cross compiler capability for Lazarus and it would seem that the first step of that is to get a ccx set up for fpc. It seems that I can not build trunk with the distro 3.0.2 , so I pulled 3.0.2 but that won't build with the distro fpc : Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i make all install FPC=/usr/bin/fpc OPT=-gl INSTALL_PREFIX=~Makefile:2789: *** The only supported starting compiler version is 3.0.0. You are trying to build with 3.0.2..  Stop. Having multiple versions and builds all floating around with their various library builds is key problem in synchronising everything and ensuring the right libs are used in each case. All this jiving around with different versions and build requirements is making my head spin. What versions of can I build with the distro 3.0.2 ,  or  do I have to try to install an earlier prebuilt pkg and ignore the distro altogether. thx ---------------------------------------------------------------------- marcov · 2017-10-06 08:15 Quote from: lazer on October 06, 2017, 10:10:50 amWhile I can see a lot of reasons for limiting the number of variable conditions for working on trunk, this seems to be persistent beyond trunk. Fedora 26 is currently distributing 3.0.2  that was announced as a "point release", whatever that term signifies. A release that only changes after the (last) point. IOW, not a major release. Only the last release is guaranteed to build trunk, but in practice the last two releases are allowed. So 3.0.2 and 3.0.0 should be able to build trunk, and all releases should be able to build themselves. So something seems messed or mixed up here. Either your sources are to old (check compiler/version.pas in doubt), or fedora ones are too heavily modified (which is strange, usually debian sources are more heavily patched than fedora)