Attempting to compile Delphi 5 code in Delphi XE5 is failing

Greetings All,

If I'm not in the correct formum please tell me which one I should be in.

Just upgraded to Delphi XE5 and am attempting to compile one of my Delphi 5 projects.  I used Interbase Express

I use either 
TDataSource -> TCDSProvider -> TDataSetProvider -> TIBQuery or 
TDataSource -> TClientDataSet -> TDataSetProvider -> TIBQuery

Also used TIBDatabase, TIBTransaction,  and TIBStoredProc

I open the smallest project I have and click compile and almost immediately I receive this error

Checking project dependencies...
Compiling CITranEngine.dproj (Debug, Win32)
brcc32 command line for "CITranEngine.vrc"
dcc command line for "CITranEngine.dpr"
[dcc32 Warning] W1030 Invalid compiler directive: 'true'
[dcc32 Fatal Error] DmTranRem.pas(18): F2051 Unit IBUtils was compiled with a different version of FireDAC.Phys.IB.IBError
Failed

There are many items in the uses clause that are underlined in red
IBDatabase, IBCustomDataSet, IBQuery, IBStoredProc
As you can see the interbase express components are among these.

In the upper left window (Structure) there are many errors:
Cannot resolve unit name 'IBDatabase' at line 18 (18:3) and several others for IBCustomerDataSet, IBQuery, IBStoredProc
Undeclared identifier 'TIBTransaction' at line 23 (23:14) and several others TIBQuery, TIBStringField, TIBBCDField, etc.

Any ideas how to move forward?

Thanks to all who can assit me with this.

Mike
0
Michael
1/16/2014 2:49:28 PM
📁 embarcadero.delphi.interbase
📃 331 articles.
⭐ 1 followers.

💬 2 Replies
👁️‍🗨️ 3197 Views

Since serveral interbase express components were underlined in red in the uses clause I decided to go look at the library path
This path was already there which points to the DCU's
c:\program files\embarcadero\rad studio\12.0\lib\Win32\release

I added this path which points to the pas files and this seems to have resolved the issue.
C:\Program Files\Embarcadero\RAD Studio\12.0\source\IBX

Is this the correct way to do this?
0
Michael
1/16/2014 4:10:53 PM
Michael Tuttle wrote:
> Since serveral interbase express components were underlined in red in the uses clause I decided to go look at the library path
> This path was already there which points to the DCU's
> c:\program files\embarcadero\rad studio\12.0\lib\Win32\release
> 
> I added this path which points to the pas files and this seems to have resolved the issue.
> C:\Program Files\Embarcadero\RAD Studio\12.0\source\IBX
> 
> Is this the correct way to do this?

No do not ever add source paths to the library path.  The DCU's in the lib 
directory are the correct ones.

Your problem is that FireDAC is in your unit scope names and there is a naming 
conflict due to that.  Remove FireDAC from your UnitScope Names in the project 
options.

-- 
Jeff Overcash (TeamB)
       (Please do not email me directly unless  asked. Thank You)
And so I patrol in the valley of the shadow of the tricolor
I must fear evil. For I am but mortal and mortals can only die.
Asking questions, pleading answers from the nameless
faceless watchers that stalk the carpeted  corridors of Whitehall.
              (Fish)
0
Jeff
1/16/2014 7:13:58 PM
Reply: