delphiindy

Delphi error [DCC Error] E2202 Required package 'IndyCore' not found after indy update


I updated Delphi 2007 with the newest Indy packages. I have put the core/protocols/system directories in the Library path. When I create a new app, everything works fine. It compiles and runs ok. Trying to compile an existing app that was compiled ok before, I immediately get the error "[DCC Error] E2202 Required package 'IndyCore'". How is this different behavior explained?


Solution

  • IndyCore, and its siblings IndySystem, and IndyProtocols, that do not have a version number on their names are from Embarcadero's copy of Indy that is preinstalled with the IDE. Embarcadero compiles their copy with {$LIBSUFFIX} enabled, thus projects refer to those Indy packages by name without version number.

    The GitHub version of Indy does not have {$LIBSUFFIX} enabled yet (see: https://github.com/IndySockets/Indy/issues/133).

    If you remove the bundled version and install the GitHub version, projects will have to refer to Indy packages with version numbers, ie IndyCore110 etc for D2007.

    So, your previous project was using to the bundled version, and your new project is using the GitHub version.