Delphi: When porting really old code from versions that did not have .dproj files, watch your .dfg and .dof files
Posted by jpluimers on 2021/06/10
I have been bitten by this a few times too much, so time to write it down:
When porting old Delphi code from the Delphi 7 and older era, the options were stored .dof (options) and .cfg (configuration) files.
More modern Delphi versions try to translate these files when generating the .dproj file, in a similar way as they try to upgrade older .dproj files to newer formats.
Many things can go wrong, including these ones I have bumped into multiple times:
DCC_DebugInformationhaving a0orfalsevalue, but not handling these values correctly (I remember problems around the Delphi XE5 era with this: When the Delphi XE5 commandline compiler fails witherror F1026: File not found: ‘False.dpr’)DCC_OutputDependenciesnot being adhered to (no .d file is being emitted by the compiler), though for the .drc files,DCC_OutputDRCFileworks fine)DCC_DebugInformationhaving a1value (Limited Debug information) instead of being absent (Debug information)DCC_SymbolReferenceInfohaving a1value (Definitions Only) instead of being absent (Reference info)
–jeroen






dummzeuch said
You probably meant
“Delphi: When porting really old code from versions that did not have .dproj files, watch your .cfg and .dof files”