2017-05-17 1 views
0

私はBrainScriptでモデルを訓練し、現在はC++プロジェクトで使用したいと考えています。 EvalMultithreads.cppから、関連するすべての機能をコピーしました。私はCNTK.CoreとCNTK.Mathライブラリをリンクし、hereのように検索パスを設定しました。もちろん、私はCNTKLibrary.hを含んでいました。 私は、コンパイラは私にこのエラー与えプロジェクト構築:またEvalMultithreads.cpp機能BOOL GetVariableByNameのC++プロジェクトでCNTKlibrary.hを使用した評価

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

、および:

undefined reference to `CNTK::Variable::Name[abi:cxx11]() const'

それがこのラインにリファラ

undefined reference to `CNTK::Function::LoadModel(std::__cxx11::basic_string CMakeFiles/xxx.dir/build.make:1848: recipe for target '/home/path/xxx.exe' failed CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/xxx.dir/all' failed Makefile:83: recipe for target 'all' failed

誰も同じ問題を抱えていませんか?

はFYI:私はUbuntu 16.04gccバージョン5.4.0を使用している、バイナリリリースパッケージの1ビットSGD

答えて

1

CNTK.Coreや他のライブラリとのCNTK ver2.0rc2 GPUは、GCC 4.8でコンパイルしたので、彼らしていますgcc 5.4.0を使ってアプリケーションと直接リンクすることはできません。 hereのように、ライブラリの作成に使用したのと同じビルドフレーバー(Debug/Release)とthe same compiler versionを使用してください。 gcc 5.4.0を使用する場合は、ソースからライブラリをビルドする必要があります。

関連する問題