C++ Builder XE6 - 64bit

Hi,

I just bought C++ Builder XE6 and was trying to build 64 bit application that uses TMS components. Everything is OK when using them in 32bit, but in 64 bit i get errors like:

[ilink64 Error] Fatal: Unable to open file 'GDIPLUS.LIB'
[ilink64 Error] Fatal: Unable to open file 'W7CLASSES.O'

etc.. So i presume that automatic installer only compiled it for 32 bit? I was trying to locate tmscxe6.cbproj in tms component pack folder to try and re-compile it for 64 bit but it seams to be missing..

In short, what are the step for using TMS Component Pack in 64 bit applications?

Thanks,
Zeljko Kovacevic

  1. Did you follow steps in http://www.tmssoftware.com/site/comp32_64.asp to compile the packages?
    2) Did you set the Win64 include path properly to point to the 64bit specific generated HPP files for TMS components?

I was looking for instructions in the manuals but didn't see this web page.

Anyway, I bought only C++ Builder personality and now I see the complications I should go through with MSBUILD tool. To be honest, this is looking too complicated for me to do it manually and I would appreciate if there is some other solution?

Is it possible to compile TMS Component Pack for 64 bit when installing it, as it is the case with 32 bit? I understand that your installer automatically compiles for 32 bit but doing all this manually is really a complication.

Complicated?

All you need to do is open a command prompt and execute two commands
- call rsvars
- call msbuild

OK. I compiled

These should be in the default output path (unless you changed this in the IDE)


I found it (hpp and .a). Testing in 64 bit project: it compiles but application does not start. In fact, now when using components in 32 bit app's i get

[ilink32 Error] Error: 'C:\USERS\ZELJKO\DOCUMENTS\TMSSOFTWARE\TMS COMPONENT PACK\TMSDXE6.BPI' contains invalid OMF record, type 0x21 (possibly COFF)

So it's pretty much re-install for me...

Can this be expected to be done automatically by the installer anytime soon? Any version from XE3 supports 64bit app's anyway so I don't see any reason not to compile TMS Component Pack for both targets.

Try to turn off using runtime packages.

Yes. This solves both problems. Compiling 32 bit application no longer
results in linker error and 64 bit application is starting normally.
Although, when switching active target from 32bit to 64bit I get
compiler errors saying that he cannot find .hpp files for the components
places on the form. Then if I place a few more TMS components on the
form it suddenly compiles OK.

And thanks. Appreciate your help.