【问题标题】:Evaluation with CNTKlibrary.h in C++ Project在 C++ 项目中使用 CNTKlibrary.h 进行评估
【发布时间】:2017-05-17 11:44:28
【问题描述】:

我已经使用 BrainScript 训练了我的模型,现在想在 C++ 项目中使用它。我从EvalMultithreads.cpp 复制了所有相关功能。我链接了 CNTK.Core 和 CNTK.Math 库,并按照here 的描述设置了它们的搜索路径。当然,我包括了 CNTKLibrary.h。 当我构建项目时,编译器给了我这个错误:

对 `CNTK::Variable::Name[abi:cxx11]() const' 的未定义引用

它引用了这一行:

if (it->Name().compare(varName) == 0)

EvalMultithreads.cpp 函数 bool GetVariableByName,还有:

对 `CNTK::Function::LoadModel(std::__cxx11::basic_string CMakeFiles/xxx.dir/build.make:1848: 目标 '/home/path/xxx.exe' 的配方' 的未定义引用失败 CMakeFiles/Makefile2:67:目标“CMakeFiles/xxx.dir/all”的配方失败 Makefile:83: 目标“全部”的配方失败

有人遇到过同样的问题吗?

仅供参考:我正在使用 Ubuntu 16.04gcc 版本 5.4.0、具有 1 位 SGD 的 CNTK ver2.0rc2 GPU

【问题讨论】:

    标签: c++ cntk


    【解决方案1】:

    二进制发布包中的 CNTK.Core 和其他库是使用 GCC 4.8 编译的,因此它们不能直接与使用 gcc 5.4.0 的应用程序链接。请使用与用于创建库的相同的构建风格(调试/发布)和the same compiler version,如here 所述。 如果要使用 gcc 5.4.0,则需要从源代码构建库。

    【讨论】:

      猜你喜欢
      • 2016-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 1970-01-01
      • 2014-05-19
      • 2017-05-13
      相关资源
      最近更新 更多