1
votes

When I add a TChart to a test C++Builder project and build, I get an error:

[bcc32 Error] GdiPlus.h(21): E2209 Unable to open include file 'algorithm'

Full parser context

CPPMainForm.cpp(6): #include CPPMainForm.h

CPPMainForm.h(13): #include C:\Program Files (x86)\Steema Software\TeeChart 2014 for RAD XE7\Delphi21.win32\Include\VclTee.TeeGDIPlus.hpp

VclTee.TeeGDIPlus.hpp(23): #include C:\Program Files (x86)\Embarcadero\Studio\15.0\include\windows\rtl\Winapi.GDIPAPI.hpp

Winapi.GDIPAPI.hpp(24): #include C:\Program Files (x86)\Embarcadero\Studio\15.0\include\windows\sdk\GdiPlus.h

I find no 'algorithm' include files on my computer except in the Boost directories

I've install "TeeChart 2014 for RAD XE7", that is for both Delphi and C++Builder, right ?

Any ideas ?

1
I guess you should be able to include de ones from boost, you just need to ensure the search path includes the boost ones.Rodrigo Gómez
There are a dozen or so algorithm.h in the boost directories, all different sizes, surely it matters? I'll try one at random.Paul Peterson
If I remember correctly, there is only one "algorithm" (note the lack of extension). You probably have 2 versions of boost installed (in my install of XE5 there are 2) but I would try adding the path to the latest one.Rodrigo Gómez
I do have 2 versions of Boost (1.55 and 1.39).<br/>Paul Peterson
In C:\Program Files (x86)\Embarcadero\Studio\15.0\include\boost_1_55\boost\<br/> I Find :<br/> detail\algorithm.hpp 3.00 KB<br/> fusion\algorithm.hpp 1.00 KB<br/> fusion\include\algorithm.hpp 1.00 KB<br/> gil\algorithm.hpp 41.00 KB<br/> gil\extension\dynamic_image\algorithm.hpp 8.00 KB<br/> graph\parallel\algorithm.hpp 3.00 KB<br/> lambda\algorithm.hpp 29.00 KB<br/> move\algorithm.hpp 9.00 KB<br/> msm\front\euml\algorithm.hpp 1.00 KB<br/> multi_array\algorithm.hpp 4.00 KB<br/> phoenix\stl\algorithm.hpp 1.00 KB<br/> range\algorithm.hpp 4.00 KB<br/> ...Paul Peterson

1 Answers

2
votes

Check that you have in your System Include Path (Tools | Options | C++ Options | Path and Directories) the default path for the boost libraries:

$(CG_BOOST_ROOT)\boost\tr1\tr1
$(CG_BOOST_ROOT)

This should make the compiler select the correct version of the library to include. In the first path, tr1, it's the file it is looking for: algorithm

This is for XE5, but it should work as-is for newer versions.

Optionally, you could add this to your project search path, but this should be on the global options, at least that's how the installer sets up this when installing.