1

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 ?

Community
  • 1
  • 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 Jun 23 '15 at 22:24
  • 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 Jun 24 '15 at 03:43
  • 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 Jun 24 '15 at 03:45
  • I do have 2 versions of Boost (1.55 and 1.39).
    – Paul Peterson Jun 24 '15 at 17:24
  • In C:\Program Files (x86)\Embarcadero\Studio\15.0\include\boost_1_55\boost\
    I Find :
    detail\algorithm.hpp 3.00 KB
    fusion\algorithm.hpp 1.00 KB
    fusion\include\algorithm.hpp 1.00 KB
    gil\algorithm.hpp 41.00 KB
    gil\extension\dynamic_image\algorithm.hpp 8.00 KB
    graph\parallel\algorithm.hpp 3.00 KB
    lambda\algorithm.hpp 29.00 KB
    move\algorithm.hpp 9.00 KB
    msm\front\euml\algorithm.hpp 1.00 KB
    multi_array\algorithm.hpp 4.00 KB
    phoenix\stl\algorithm.hpp 1.00 KB
    range\algorithm.hpp 4.00 KB
    ...
    – Paul Peterson Jun 24 '15 at 17:28
  • Sorry about the unformatted text!! – Paul Peterson Jun 24 '15 at 17:33
  • I've added an answer. You are NOT looking for an `algorithm.hpp` or `algorithm.h`, but `algorithm` without any extension, and this is inside the `tr1` folder. – Rodrigo Gómez Jun 24 '15 at 18:30

1 Answers1

2

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.

Rodrigo Gómez
  • 1,079
  • 8
  • 24