Issues 3.0.0

From Free Pascal wiki
Revision as of 18:58, 23 August 2015 by Xhajt03 (talk | contribs) (Dependencies not listed in fpmake.pp are not included in the source archives generated by fpmake (see e.g. which misses sources of all IDE units) :-()

Darwin releases of 3.0.0

The releases for iOS and the iphonesim targets will be done from the branches/fixes_3_0_ios branch. The reason is that the AArch64 port was deemed too invasive for merging in the fixes branch at the time it was finished. These compilers with have the 3.0.1 version number.

The installation package with the iOS and iphonesim cross-compilers will contain new fpc, fpcres and fpcmake binaries from the branches/fixes_3_0_ios branch that will overwrite the copies from the Intel 3.0.0 release, in order to add Aarch64 and iphonesim/x86_64 support. Normally, cross-compiler packages do not overwrite these utilities. They will also create ppc386-3.0.1 and ppcx64-3.0.1 symlinks in /usr/local/bin, which can be used via "fpc -V3.0.1" to target the iphonesim targets (the 3.0.1 units are not compatible with the 3.0.0 compilers).

Issues with 3.0.0 release candidates

This page is supposed to contain all issues discovered while testing release candidates and their status. Make sure to include information about the platform where the problem appears (if applicable). Once the issue gets resolved, you should strike it over and add number of SVN revision fixing it. If the revision number refers to a SVN repository different from "fpc" (i.e. "fpcbuild" or "fpcdocs"), include information about the SVN repository too.

  1. Last change at 32-bit SEH enabling.

Issues with 3.0.0-rc1

  1. Several FreeBSD versions won't have GDB support in the IDE. This item will be updated later with exact targets.
  2. Several installers install .fpm files with references to absolute paths in it.
  3. (Marco) Ladislav asked to merge r31306 (fix to reporting of mysql error messages. )
  4. make sourcezip (used for GO32v2 and OS/2) is broken for fpmake managed sources:
    • everything is cleaned at the beginning of processing of this target, although fpmake.exe is necessary for creation of the source archives
    • fpmake building fails with "Can't find unit system used by fpmkunit"; the particular command line contains indeed no path containing the system unit (fpc.exe src/fpmkunit.pp -n -Fu../../rtl -FUunits_bs/os2 -Fu../paszlib/src -Fu../hash/src -Fi../paszlib/src -dNO_UNIT_PROCESS -Fu../libtar/src)
    • fpmake fails complaining about a missing manifest file
    • fpmake generated source archives contain only source files directly used on the host platform used for their generation; source files used for building the same package for other targets and also files not explicitly listed in the dependencies in fpmake.pp (e.g. all units of the text mode IDE) are missing
  5. text mode installer running under OS/2 doesn't like more than 33 files on one tab (workaround = moving packages from tab "OS/2" to "OS/2-2"); GO32v2 shall be checked as well!
  6. text mode IDE breaks the path to the help file index when reading this path from FP.INI if the path contains backslashes (discovered on OS/2, but probably happening on other DOS-like platforms including Win32 as well) - regression compared to FPC 2.6.4
  7. Request to merge r31349. This is a fix were a one line overloaded version of scandatetime didn't pass on one of the parameters.
  8. fpcmkcfg sets a binutils prefix for the JVM target, while it shouldn't. This is fixed in trunk (see below for the revision). With 3.0rc1, you may have to use "-XP" to clear the binutils prefix when targeting the JVM platform (although the OS X release already includes the fpcmkcfg fix, so there it won't be necessary)

Merge requests

  1. Florian and Sergei still have to check their RTL commits for possible merges. Several exception handling and lowlevel RTL (startup code etc) fixes I don't know what to do with. ( see Marco's unmerged "rest" page)

Post RC1 merges


  • 1182: simplification of OS X information
  • 1184: readme for the JVM port


  • 31372: don't use the binutils prefix when targeting the JVM