【问题标题】:About ICE-Chat Demo build [closed]关于 ICE-Chat Demo 构建 [关闭]
【发布时间】:2013-08-09 06:08:50
【问题描述】:

当我使用 VS2012 Express nmake 构建 Ice-Chat(1.4.0)(http://www.zeroc.com/chat/download.html) 时,我总是收到错误:

ChatRoom.obj : error LNK2001: Unresolved external symbol "__declspec(dllimport) public: __cdecl IceInternal::Cpp11FnCallbackNC::Cpp11FnCallbackNC(class std::function<void __cdecl(class IceUtil::Exception const &)> const &,class std::function<void __cdecl(bool)> const &)" (__imp_??0Cpp11FnCallbackNC@IceInternal@@QEAA@AEBV?$function@$$A6AXAEBVException@IceUtil@@@Z@std@@AEBV?$function@$$A6AX_N@Z@3@@Z)
ChatServer.obj : error LNK2001: Unresolved external symbol "__declspec(dllimport) public: __cdecl IceInternal::Cpp11FnCallbackNC::Cpp11FnCallbackNC(class std::function<void __cdecl(class IceUtil::Exception const &)> const &,class std::function<void __cdecl(bool)> const &)" (__imp_??0Cpp11FnCallbackNC@IceInternal@@QEAA@AEBV?$function@$$A6AXAEBVException@IceUtil@@@Z@std@@AEBV?$function@$$A6AX_N@Z@3@@Z)

我该怎么办?我已导入包含文件和库,但不工作。我想知道 Cpp11FnCallbackNC 属于哪个库。

【问题讨论】:

  • 对不起,什么?!请使用一些格式并具体说明您的问题
  • 对不起,这是我的错。我重新编辑它们。

标签: ice


【解决方案1】:

好的,这就是这个问题的答案:

安装 ICE 后,比如版本 3.5.0,到

${ICEDIR} 

你有以下目录:

for VS 2010:
${ICEDIR}/lib
for VS 2010 x64:
${ICEDIR}/lib/x64
for VS 2012:
${ICEDIR}/lib/vc110
for VS 2012 x64:
${ICEDIR}/lib/vc110/x64

在您的情况下,您可能添加了错误的库路径

【讨论】:

  • 是的,你是对的!这个错误消失了。但是得到了新的错误:应用程序无法正常启动(0xc000007b)。在此之前还有一个错误:glacier235.dll丢失了,当我把glacier235.dll放到windows/system32下,没问题,但是放到windows/syswow64就不正确了。
  • 您能做的最好的事情是在系统属性中设置 PATH 变量以包含您用来查找正确库的相应 lib 目录。如果您正在开发自己的项目,可能使用 CMake 或其他工具,请记住不要混合使用 ICE 的调试和发布库。它会让你免于很多痛苦......
猜你喜欢
  • 2017-10-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-08
  • 2010-12-27
  • 2019-12-21
  • 1970-01-01
相关资源
最近更新 更多