Page 1 of 1

Unresolved external ... System::Classes::ObjectBinaryToText

Posted: Mon Feb 03, 2014 2:49 pm
by 16466850
We are trying to link our application (Naviplex) with XE5 update 2.

We have 2 link errors:
d:\program files\embarcadero\rad studio\12.0\Bin\CodeGear.Cpp.Targets(2953,5): error : Error: Unresolved external '__fastcall System::Classes::ObjectBinaryToText(System::Classes::TStream *, System::Classes::TStream *)' referenced from D:\BUILDNAVIPLEX\TINDERBOX2_BUILD\BUILD_TREES\NAVIPLEX_3_2_2\BCBCOMPONENTS\BCB2013\STEEMA\TEECHARTPRO2013\DELPHI18.WIN32\LIB\OBJ\TEEUI918.LIB|VCLTee.TeeExport
d:\program files\embarcadero\rad studio\12.0\Bin\CodeGear.Cpp.Targets(2953,5): error : Error: Unresolved external '__fastcall System::Classes::ObjectTextToBinary(System::Classes::TStream *, System::Classes::TStream *)' referenced from D:\BUILDNAVIPLEX\TINDERBOX2_BUILD\BUILD_TREES\NAVIPLEX_3_2_2\BCBCOMPONENTS\BCB2013\STEEMA\TEECHARTPRO2013\DELPHI18.WIN32\LIB\OBJ\TEE918.LIB|VCLTee.TeeStore

The embarcadero support told me to check with you, if you are aware of the problem. Maybe you have a specific version more adapted to XE5 update 2.

They pointed out that:
the error log shows:
'__fastcall System::Classes::ObjectBinaryToText(System::Classes::TStream *, System::Classes::TStream *)'
BUT the actual definition in RTL.lib is
'__fastcall System::Classes::ObjectBinaryToText(const System::Classes::TStream * const, const System::Classes::TStream * const)'

Can you help ?

Thanks

Re: Unresolved external ... System::Classes::ObjectBinaryToText

Posted: Wed Feb 05, 2014 12:25 pm
by yeray
Hello,

Can you please tell us what exact TeeChart version are you using?
Also, does it happen in a new simple example project with just a chart on the form or only when trying to build an old application? If the second, it may be due to a wrong reference hadcoded in the project file.

Re: Unresolved external ... System::Classes::ObjectBinaryToText

Posted: Wed Feb 05, 2014 1:48 pm
by 16466850
>> can you please tell us what exact TeeChart version are you using?
TeeChart Pro 2013 for RAD XE4
Maybe that's the point.
How must I do to get an updated version ?

>> Also, does it happen in a new simple example project with just a chart on the form or only when trying to build an old application?
Well, I am embarrassed. I am just porting an application. So it would take me some time to learn to make a simple example project with just a chart.

>> If the second, it may be due to a wrong reference hard-coded in the project file.
what kind of reference? A wrong reference to a library you mean? Well, we'll check once we know what version we must use exactly.

Re: Unresolved external ... System::Classes::ObjectBinaryToText

Posted: Fri Feb 07, 2014 10:12 am
by yeray
Hello Patrick,

Excuse us for the delayed reply here.
asg wrote:TeeChart Pro 2013 for RAD XE4
Maybe that's the point.
How must I do to get an updated version ?
Please, see the release notes (release.txt) in the TeeChart installation to tell us the exact build.
The installation path is by default:
32bit machine: C:\Program Files\Steema Software\TeeChart 2013 for RAD XE4
64bit machine: C:\Program Files (x86)\Steema Software\TeeChart 2013 for RAD XE4

However, in your first post, you said:
asg wrote:We are trying to link our application (Naviplex) with XE5 update 2.
Note you can't use TeeChart for XE4 in XE5. You have to use TeeChart for XE5 if using XE5 (TeeChart2013RADXE5.exe).
asg wrote:Well, I am embarrassed. I am just porting an application. So it would take me some time to learn to make a simple example project with just a chart.
It's easy, just open the IDE without any project opened, from the Windows StartMenu. Then, in the IDE, create a new project through "File/New" menu.
What type of project are you working with? VCL or Firemonkey? Delphi or C++Builder?
Create a new project from the "File/New" menu of the same platform than the project you are trying to port.
Then, with the new project opened, in the design view (F12 to switch form the design view and the code view), drop a TChart component from the toolbox on the right into the form.
Then, if you see a blank chart in the form, try to build the project (Ctrl+F9). Does it build fine?
asg wrote:what kind of reference? A wrong reference to a library you mean? Well, we'll check once we know what version we must use exactly.
Yes, this is often in C++Builder projects. When you save a project, the project file (.cbproj) stores the names of the libraries used in the application. However, when you open the project in a different IDE, the libraries for this new IDE may have a different name so the project can't find the correct ones.

Re: Unresolved external ... System::Classes::ObjectBinaryToText

Posted: Fri Feb 07, 2014 5:01 pm
by 16466850
The problem was caused by the fact that we were trying to use the Teechart library for XE4, thought we were building with XE5 !

Now, it is ok