Building the CLX with FPC
From Free Pascal wiki
Jump to navigationJump to searchIntroduction
There are some efforts to build the (Free)CLX with FPC, here is a short explanation how to build it.
Status
Current status is that all units except the database related units build.
That's 39 of 44 units.
Howto
- Build and install FPC from CVS sources: How_to_start
- copy the clx sources to a newly created directory as well as the
- HelpIntfs.pas from Sources/Common/
- Win32 only: CommDlg.pas from Source/Rtl/Win/
- Win32 only: CommCtrl.pas from Source/Rtl/Win/
- Win32 only: ShlObj.pas from Source/Rtl/Win/
- Win32 only: RegStr.pas from Source/Rtl/Win/
- Win32 only: WinInet.pas from Source/Rtl/Win/
- Win32 only: UrlMon.pas from Source/Rtl/Win/
- Win32 only: WinSpool.pas from Source/Rtl/Win/
- QButtons.res from Lib/
- Contnrs.pas from Source/Rtl/Common/
- IniFiles.pas from Source/Rtl/Common/
- QFileDialog.res from Lib/
- QCheckLst.res from Lib/
- QDialogs.res from Lib/
- MaskUtils.pas from Source/Rtl/Common/
- remove all references to *.xfm files, fpc can't handled them yet (fix this!!)
- remove usage of sysinit namespace in qdialogs.pas; system can be used instead
- replace all RTLConsts with RTLConst (fix this!!) (should be fixed after 1.9.8)
- fix ShlObj.pas: the lines 3554 to 3557 miss a semicolon at the end; FPC won't emulate bugs in the Delphi parser
- create a dummy unit to build the clx:
unit buildclx; interface uses uses BindHelp, QDBActns, QFileCtrls, QActnList, QFileDialog, QSearch, QButtons, QForms, QStdActns, QCheckLst, QGraphics, QStdCtrls, QClipbrd, QGrids, QStyle, QComCtrls, QImgList, QTypes, QConsts, QDialogs, QMask, QControls, QExtCtrls, QMenus, Qt, QPrinters; implementation end.
- build the CLX with fpc -Sd buildclx
Remark: There is currently a bug in fpc's ppu handling which prevents a make of the clx's units. So do always a rm/del *.ppu before compiling.
Todo
As you might guess, there is also stuff to do:
- The ClassGrouping functions are only dummies in FPC (StartClassGroup et al.)