Occasionally, usually when setting up a new C++ project, I see this error from IntelliSense and the C++ compiler: cannot open source file "_config-eccp.h" (dependency of "Mstn/MdlApi/MdlApi.h"). It's sole mention is in include file _config.h...
cannot open source file "_config-eccp.h" (dependency of "Mstn/MdlApi/MdlApi.h")
_config.h
#if defined (__EDG__) \ && !defined (__DECCXX) \ && !defined (__HP_aCC) \ && !defined (__INTEL_COMPILER) \ && !defined (_SGI_COMPILER_VERSION) // FIXME: make this more robust by detecting the EDG eccp demo // during library configuration (and avoid relying on compiler // specific macros) # include "_config-eccp.h" #endif // __EDG__
IntelliSense is correct: file _config-eccp.h is not part of the SDK: it doesn't exist.
_config-eccp.h
Presumably something (the VC++ compiler?) is defining macro __EDG__, but those other macros are all undefined. Judging by the comment, someone in Bentley Systems development planned to do something about this, but hasn't yet got around to it.
__EDG__
What can I do to suppress that message? Is it safe simply to #undefine __EDG__?
#undefine __EDG__
I guess it's a consequence of conflict between 8.3 naming in SDK shell and IntelliSense, that do not support 8.3 names, mentioned by Bob in this thread.
Regards,
Jan
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point