Home General

Unit raParser was compiled with a different version of ppRTTI.TraRTTIClassRegistry

edited November 2011 in General
I am moving a project from Delphi 2007 to Delphi XE, and upgrading from
RB 10 to RB 14. When I build the project, I get the following error:

[DCC Fatal Error] Drawer.pas(9): F2051 Unit raParser was compiled with
a different version of ppRTTI.TraRTTIClassRegistry

Please advise how I might remedy this.

Comments

  • edited November 2011
    Hello,

    I had a similar error once upon a time. it was because I have had some older
    DCUs in some windows folders (system32, etc.) on the path. But it was easy
    to find because the start with pp*.dcu, so you can detect the old units and
    delete or rename it. Perhaps it is the same on your system.

    chris
    EULANDA Software

  • edited November 2011
    Hi David,

    Are you building packages or simply compiling a Delphi project?

    Are you able to run an of the RAP demos provided in the \Demos\0.
    RAP\... directory?

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited November 2011
    Hi Nico.

    I am just trying to compile a Delphi project. I ran a few of the demos
    just fine, including the RAP demo.

    The project uses NexusDB, their most recent version 3.10. There is a
    dade plug-in which I assume is installed by opening rbnexusdb1415.dpk,
    building it, then installing it. I tried doing that. Then when I
    compiled instead of doing a build, I got a new message that it could
    not find daNexusDB, so I found the daNexusDB.dcu file in the demo
    folder and copied it to my project folder. Now the project will
    compile, but if I try to build it, the previous error message that I
    reported comes up again:

    [DCC Fatal Error] Drawer.pas(9): F2051 Unit raParser was compiled with
    a different version of ppRTTI.TraRTTIClassRegistry

    I assume this is related to not having the source files for RAP, but I
    don't know how to work around it.

    David.


  • edited November 2011
    Hi Nico.

    When I first open the project, I get the following popup box:

    Class TdanxQueryDataView not found.

    Can you give me instructions about how I should install Report Builder
    to work with NexusDB? I am thinking something is wrong in that area.
  • edited November 2011
    I am getting more confused all the time!

    Ok, I removed the dade plugin from my installed packages, then repeated
    the steps to install the dade of copying the files to the lib folder,
    setting my bpl and dcp destinations to Report Builder's lib folder,
    recompiled and then reinstalled the package. Then I put the BPL and
    DCP paths back how they were.

    Note that I had added a path to the source files for Report Builder
    because I was having trouble getting the dcu files from the pas files
    when compiling the package. I removed that path now, and I think maybe
    that was causing the problems with building and the error mentioned in
    the subject line.

    Immediately after doing all this, I was able to open the project and
    both compile and build it. Great, I thought. Then to be thorough, I
    exited Delphi IDE, then restarted it, and when I go to open the
    project, I get the popup again saying Class TdanxQueryDataView not
    found. I choose Cancel rather than ignore. I get another popup saying
    "Error Creating Form: Class TdanxQueryDataView not found. If I try to
    build at this point, it builds fine.

    If I close the project and reopen, the previous error popups happen
    again. If I choose ignore, then when I compile, Delphi IDE asks me if
    I want to remove the reference to TdanxQueryDataView.

    I have the following in my unit which was probably placed there when I
    placed a component on the form.

    TfmDrawer = class(TForm)
    ...
    ppDBText8: TppDBText;
    daDataModule1: TdaDataModule;
    danxQueryDataView1: TdanxQueryDataView;
    danxQueryDataView2: TdanxQueryDataView;
    raCodeModule1: TraCodeModule;
    nxDatabaseMapper1: TnxDatabaseMapper;
    procedure FormShow(Sender: TObject);
    ...
    end;

    So, have these references been changed in RB 14 from RB 10? Should I
    change the names, or delete them, or what?

    I'm stuck. Help would be greatly appreciated. :)

    --
  • edited November 2011
    Hi David,
    are you working in a Terminalserver?
    chris

  • edited November 2011
    Chris (EULANDA) wrote:

    No.
  • edited November 2011
    Hi David,

    When using versions of Delphi greater than 10, a separate design-time
    package and registration file is required or Delphi looses it's
    reference to the package when closed and loaded again. It seems this
    package and registration file is missing from the NexusDB demo folder.
    Send a small email to support@digital-metaphors.com requesting these
    files and I'll send them to you asap.

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
This discussion has been closed.