ICE warning LNK4217: locally defined symbol [email protected]@[email protected]@@Z (public: __this

NeoNeo Member NeoOrganization: HomeProject: Personal
I just got to know ICE! I think I am *very* interested in it.

I downloaded Ice-1.4.0-VC71.msi and installed it to c:\ice. I setup INCLUDE and LIB in VS.NET 2003. And I created a test DLL project (the Ice-1.4.0.pdf manual is too old, because now I have to create a DLL project rather than a standalone EXE project as the manual showcased). And though VS.NET has created two necessary predefined _USERDLL and _WINDLL, I have to define _DLL because ICE.h will complain if it is not there (bug in the header?).

But I get the following error when building the project (you can see it's a linker error, my code passed complilation):

ICE warning LNK4217: locally defined symbol [email protected]@[email protected]@@Z (public: __thiscall exception::exception(class exception const &)) imported in function "public: __thiscall std::logic_error::logic_error(class std::logic_error const &)" ([email protected]@@[email protected]@@Z)

Help....

Comments

  • bernardbernard Jupiter, FLAdministrators, ZeroC Staff Bernard NormierOrganization: ZeroC, Inc.Project: Ice ZeroC Staff
    You need to build with /MD or /MDd when using respectively release Ice libraries and debug libraries (iced.lib etc).

    The manual and the demos show how to build exes, because it's simple; but obviously it's possible to build DLLs as well. Also, if you want to export Slice definitions from a C++ DLL, you need to use the slice2cpp --dll-export option.

    Cheers,
    Bernard
Sign In or Register to comment.