compile time error "error C1189: #error : "Wrong compiler options has been detected.

Hello,

Using IDE VS 2005, I am trying to use some functionality of OpenCASCADE from Win32 console application. I'm trying to link it statically (all the include path & .lib files are added to Project->Options->VC++Directories) I am getting the "error C1189: #error : "Wrong compiler options has been detected. Add /DWNT option for proper compilation".

below is the sample code snippet

#include "stdafx.h"
#include

int _tmain(int argc, _TCHAR* argv[])
{
const TopoDS_Shape S;
const gp_Dir D;

BRepPrimAPI_MakePrism(S,D,Standard_True,Standard_False,Standard_True);
return 0;
}

For removing the error I've added "WNT" to the preprocessor definition as discussed for some of the queries in the forum. but i got some linking error, i added path of ".lib" VC++ directories

error LNK2019: unresolved external symbol "public: virtual void __thiscall BRepBuilderAPI_Command::Delete(void)" (?Delete@BRepBuilderAPI_Command@@UAEXXZ) referenced in function "public: virtual __thiscall BRepBuilderAPI_Command::~BRepBuilderAPI_Command(void)" (??1BRepBuilderAPI_Command@@UAE@XZ)
error LNK2001: unresolved external symbol "public: virtual unsigned int __thiscall BRepBuilderAPI_Command::IsDone(void)const " (?IsDone@BRepBuilderAPI_Command@@UBEIXZ)
error LNK2019: unresolved external symbol "public: virtual void __thiscall BRepBuilderAPI_MakeShape::Delete(void)" (?Delete@BRepBuilderAPI_MakeShape@@UAEXXZ) referenced in function "public: virtual __thiscall BRepBuilderAPI_MakeShape::~BRepBuilderAPI_MakeShape(void)" (??1BRepBuilderAPI_MakeShape@@UAE@XZ)
error LNK2001: unresolved external symbol "public: virtual void __thiscall BRepBuilderAPI_MakeShape::Build(void)" (?Build@BRepBuilderAPI_MakeShape@@UAEXXZ)
error LNK2001: unresolved external symbol "public: virtual class TopTools_ListOfShape const & __thiscall BRepBuilderAPI_MakeShape::Generated(class TopoDS_Shape const &)" (?Generated@BRepBuilderAPI_MakeShape@@UAEABVTopTools_ListOfShape@@ABVTopoDS_Shape@@@Z)
error LNK2001: unresolved external symbol "public: virtual class TopTools_ListOfShape const & __thiscall BRepBuilderAPI_MakeShape::Modified(class TopoDS_Shape const &)" (?Modified@BRepBuilderAPI_MakeShape@@UAEABVTopTools_ListOfShape@@ABVTopoDS_Shape@@@Z)
error LNK2001: unresolved external symbol "public: virtual unsigned int __thiscall BRepBuilderAPI_MakeShape::IsDeleted(class TopoDS_Shape const &)" (?IsDeleted@BRepBuilderAPI_MakeShape@@UAEIABVTopoDS_Shape@@@Z)
error LNK2019: unresolved external symbol "public: void __thiscall TopTools_ListOfShape::Clear(void)" (?Clear@TopTools_ListOfShape@@QAEXXZ) referenced in function "public: __thiscall TopTools_ListOfShape::~TopTools_ListOfShape(void)" (??1TopTools_ListOfShape@@QAE@XZ)
error LNK2019: unresolved external symbol "public: __thiscall BRepPrimAPI_MakePrism::BRepPrimAPI_MakePrism(class TopoDS_Shape const &,class gp_Dir const &,unsigned int,unsigned int,unsigned int)" (??0BRepPrimAPI_MakePrism@@QAE@ABVTopoDS_Shape@@ABVgp_Dir@@III@Z) referenced in function _wmain
error LNK2019: unresolved external symbol "public: __thiscall TopLoc_Location::TopLoc_Location(void)" (??0TopLoc_Location@@QAE@XZ) referenced in function "public: __thiscall TopoDS_Shape::TopoDS_Shape(void)" (??0TopoDS_Shape@@QAE@XZ)

I've a package of all the dll build in 2005 environment

Can anybody suggest me how to remove these warnings?

mz's picture

Hi Pravin,

are you sure you added *all* libraries to linker's additional dependencies? The messages look like e.g. TKTopAlgo.lib (contains BRepBuilderAPI) is missing

Tilman Leune's picture

Hi,

additionally, TKPrim.lib implementing BrepPrimAPI_... seems to be missing, too.