RAD Studio XE 2010 : Graphics32 compilation problem - delphi

I'm trying to install Graphics32 to my freshly installed Embarcadero RAD Studio XE.
I just open GR32_DSGN_RS2010.bpl and I try to compile it.
I get this error :
[DCC Erreur] GR32.inc(172): E2029 Déclaration attendu(e) mais constante chaîne trouvé(e)
Which means
[DCC Erreur] GR32.inc(172): E2029 Declaration expected but constant found instead
It's here:
{$IFNDEF COMPILER6}
{$IFNDEF FPC}
//////////////////////////////////////////////////////////////////////
' Graphics32 may only be installed with Delphi/BCB 6 (or higher) '
' or Free Pascal / Lazarus '
//////////////////////////////////////////////////////////////////////
{$ENDIF}
{$ENDIF}
So it seems like there's a "define" problem.
Any idea where I should look / what I should modify to make it work?

I think the current 1.9 release doesn't correctly support XE. Ther error you see is probably because the .INC file fails to detect the new compiler version.
I found this upload on sourceforge, which has 'compatibility fixes' for Graphics32 on XE.
I have got adapted GR32 for Delphi XE. There is compatibility changes.
As an alternative, you could get the latest source snapshot directly from the project SVN server. It seems that version has XE supported included.
No warranty expressed or implied, though. :-)

Sounds like you have an old version of graphics32 which doesn't have up to date conditional definitions for recent Delphi versions in the GR32.inc include file.
Simplest solution is to download the latest graphics32 which has been updated for XE.
It seems you have to get the latest development version for XE compatibility.

Much as I haven't installed Graphics32 into mine, you can just comment out all those lines :) Take it from there.

Related

Is it possible to modify System.Classes.pas in Delphi Rio (10.3.3)

I am upgrading a project from Delphi XE3 to Delphi Rio 10.3.3. The project contains a number of fixes to the VCL and RTL units, made by copying units from the Delphi install into a path inside the project and applying modifications. This still appears to work so long as the correct compiler options are specified in the unit, but this does not seem to work for System.Classes.pas, getting the infamous error:
F2051 Unit AAA was compiled with a different version of BBB
Has anybody been able to modify System.Classes.pas for Delphi Rio, and if so which compiler switches did you use? I note from this answer: https://stackoverflow.com/a/24145450/12683559 that this was broken in XE6 but worked again in XE7.

Recompiling TeeChartPro

I would like to build and install the TeeChartPro source code in Delphi 10 Seattle. I have TeeChartSourceCode Build 2014.12.140923.
When I execute TeeRecompile there is no IDE's.
What can I do? It seams that my TeeRecompiler only looks for delphi up to XE7.
Is there a possibility to get an updated TeeRecompile?
Thanks,
Jens
When v2014.12 was published RAD Studio 10 Seattle still didn't exist.
TeeChart v2015.16 was the first version to support RAD Studio 10 Seattle.
See the Release Notes here.
Look at .inc file (TeeDefs.inc may be) for version depended conditional defines.
For minimum changings, add at first lines line like that:
{$IFDEF VER300} {$DEFINE VER280} {$ELSE} {$ENDIF}
it will define VER280 (from Delphi XE7) under Delphi 10 Seattle (wich implictly defines VER300)

F2063 Could not compile used unit 'QuickPDF0724.pas'' error in Delphi XE4

I have included QuickPDF0724 unit in uses in one of my pas file. I have give the path of this unit in Tools --> Options. But I am getting the error: "F2063 Could not compile used unit 'QuickPDF0724.pas'"
In the path mentioned of that unit, only dcu file is there, no pas file.
Same code is working fine in Delphi 7 but not in Delphi XE4. What could be the reason?
In the path mentioned of that unit, only dcu file is there, no pas file.
DCUs are Delphi version dependent.
So your DCU made in Delphi 7 cannot be read by Delphi XE4 and by any other Delphi version but Delphi 7 (with the same set of updates installed - those updates may change Delphi RTL and make dependencies in those DCUs fail).
That means you either need to take QuickPDF0724.pas and compile it with your version of Delphi XE4, or you need to find someone who would do it for you and then send you the resulting DCU they made (wither possible - made exactly for the same Build of Delphi XE4 (Build number is changed by installing update packs) as you have).
My Delphi 7 application was using QuickPDF0724 and same I was trying in Delphi XE4. QuickPDF0724 has version number 7.24. This was not compatible with Delphi XE4.
So, I downloaded latest version of QuickPDF i,e DebenuPDFLibrary1011 having version number 10.11 which is compatible with Delphi XE4.
I did few changes in the code like:
Changed unit name in uses from QuickPDF0724 to DebenuPDFLibrary1011.
Changed declaration in the code like objQuickPDF : TDebenuPDFLibrary1011 from objQuickPDF : TQuickPDF0724
Changed constructor: objQuickPDF := TDebenuPDFLibrary1011.Create instead of objQuickPDF := TQuickPDF0724.Create
Rest was fine...

'designide' must be recompiled when installing DWScript on Delphi XE2

I'm running Delphi XE2 w/ update 3.
I've just checked out the read-only branch of DWScript from the svn repository. I try to install dwsLib.dpk from the DelphiXE2 folder but receive the following error:
[DCC Fatal Error] dwsLibRuntime.dpk(30): E2225 Never-build package 'designide' must be recompiled
I tried building dwsLibRuntime.dpk first, but I get an error about missing TdwsUnit component, so that doesn't work, either. I'm not having any luck finding contact info for the author, so am trying here.
Any advice would be greatly appreciated.
The short answer is: DWScript doesn't target Delphi XE2.
Quote:
DWScript lead platform is currently Delphi XE, compatibility with
Delphi 2009 & Delphi 2010 is maintained, but some features may be
restricted (RTTI f.i.).
You must fix the source code if you want it to work with Delphi XE2.
I.am using XE2 with the trunk code and it works fine. I loaded up each dpi (there are two) and built and installed the first. Then compile your code ensuring that you point to the source folders (there are at least three). Failing that I'll post you an innosetup exe that installs it into XE2 that I've made,

Converting Delphi 7 property editor to Delphi XE2

First of all, I have never written a property editor from scratch, but had some help with one in another question. Refer to the accepted answer there. This was in Delphi 7, and now I have started using XE2 and I have to make sure my property editor is compatible with both 7 and XE2.
It's essentially a collection editor, with the difference that each collection item has its own named component in the parent form. Is there anything new about the property editors in XE2 since 7, since it is a huge version jump?
I do NOT want to make a complete copy of my unit for different versions. I want to maintain all possible versions in one unit.
Edit
It appears that Delphi XE2 has the same property editors as Delphi 7, but the issue I was facing was that although I was including DesignIDE in my package, it could not find anything, so I had to add the ToolsAPI folder to my library path.
However, now I have a new issue after this.
[DCC Fatal Error] ToolsAPI.pas(18): F1026 File not found: 'DockForm.dcu'
I'm lost in the whole concept of BPL packages and requiring others, etc.
DesignIntf, DesignEditors, DesignMenus, DesignWindows are part of DesignIDE.bpl and is found in \Embarcadero\RAD_Studio\9.0\lib\win32\release\designide.dcp. But there is no designide.dcp for 64bit which is why it throws an error when compiling a 64bit package that references these units.
There is no 64bit version of DesignIDE because it is for a design time package and design time packages are 32 bit only (remember Delphi IDE is still only 32 bits). So always set your design time package as 32bit, not 64bit. :)
Mike
The DockForm.pas source code is available neither in Delphi XE nor in Delphi XE2.
You may try this accepted answer posted on SO applying to similar issue on Delphi 2010.
Presumably, it is compiled and included within some package already distributed with Delphi XE2.

Resources