高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】linking odreadexdll with msvc6 with non-standard project se
linking odreadexdll with msvc6 with non-standard project set
linking odreadexdll with msvc6 with non-standard project settings
when i use the standard project settings, i can link the example odreadexdll without problems.
when i change the standard project settings i get the following warnings
link : warning lnk4049: locally defined symbol ""public: __thiscall std::ios_base::init::init(void)" (??0init@ios_base@std@@qae@xz)" imported
link : warning lnk4049: locally defined symbol ""public: __thiscall std::ios_base::init::~init(void)" (??1init@ios_base@std@@qae@xz)" imported
link : warning lnk4049: locally defined symbol ""public: __thiscall std::_winit::_winit(void)" (??0_winit@std@@qae@xz)" imported
link : warning lnk4049: locally defined symbol ""public: __thiscall std::_winit::~_winit(void)" (??1_winit@std@@qae@xz)" imported
the project settings that i use are as follows :
settings for "c++/code generation" multithreaded instead of "multithreaded dll"
settings for linking : nodefaultlib
when linking with nodefaultlib i need to add libcmt.lib and libcpmt.lib
i prefer this settings because i need to also link other libraries that are compiled with /mt.
is there a possibility to remove this warnings ?
we don't support mt dlls, only static libs are provided for mt.
mt dlls is a rather strange thing - each dll would contain its own crt copy.
vladimir
|