Я пытаюсь построить тензор потока в качестве отдельного проекта, и я следую этому руководству
http://www.stefanseibert.com/2017/10/tensorflow-as-dll-into-your-windows-c-project-with-gpu-support-and-cmake-v1-3/
, но в качестве альтернативы с поддержкой ЦП
Мои версии установки среды
protobuf 3.6.1
тензор потока 1.10.0
tf.GIT_VERSION = b'v1.10.0-rc1-19-g656e7a2b34 '
Вот шаги, которые я использовал для генерации общей библиотеки * * * * * * * * * *
- *1022* *1022* * *1022* 1027 * Установлен исходный кодзависимости, так как я не использую привязки python, SWIG не нужен, поэтому я установил Git (версия 2.15.1.windows.2) и cmake 3.11.1
Iиспользовал 64-битные инструменты из Visual Studio 2015, так как VS2015 необходим для сборки DLL.Я должен иметь возможность открыть «Командную строку Native Tools VS2015 x64».Это необходимо, поэтому VS использует 64-битный набор инструментов.
Перейдите в командной строке к подпапке «tenorflow / contrib / cmake» исходного кода и создайте каталог с «mkdir build»,Затем перейдите к новой папке сборки с помощью «сборки на компакт-диске».
Создание решения для сборки: cmake .. -A x64 -DCMAKE_BUILD_TYPE = RelWithDebInfo -Dtensorflow_BUILD_CC_EXAMPLE = OFF -Dtensorflow_ENABLE_GRPC_SDTSTCCORT_CABT_STDER_SD_SDK_SD_RU_RU_RU_RU_RU_RU_RU_RU_RU_RU_RU_устроитель= OFF -Dtensorflow_BUILD_PYTHON_TESTS = OFF -Dtensorflow_ENABLE_GPU = OFF -Dtensorflow_WIN_CPU_SIMD_OPTIONS = / arch: AVX -Dtensorflow_BUILD_SHARED_LIB = ON
- * 1043Чтобы собрать tennflow.dll, я выполнил следующую команду: MSBuild / p: Configuration = RelWithDebInfo tenorflow.vcxproj
Это приводит к ошибке: D: \ work \ tenorflow \tenorflow / core / lib / core / stringpiece.h (34): фатальная ошибка C1083: невозможно открыть включаемый файл: 'absl / strings / string_view.h': такого файла или каталога нет (компиляция исходного файла D: \ work \ tenorflow \tenorflow \ core \ lib \ core \ coding.cc) [D: \ work \ensorflow \ tenensflow \ contrib \ cmake \ build \ tf_core_lib.vcxproj] .
Я исправилвышеупомянутая ошибка с этим: https://github.com/tensorflow/tensorflow/issues/22007#issuecomment-424553600.
При выполнении вышеизложенного я в конечном итоге с этой ошибкой: path.obj: ошибка LNK2019: неразрешенный внешний символ "void __cdecl absl :: base_internal ::ThrowStdOutOfRange (char const *) "(? ThrowStdOutOfRange @ base_internal @ absl @@ YA XPEBD @ Z), на который есть ссылка в функции" класс std :: basic_string, класс std :: allocator> __cdecl tenorflow :: io :: internal :: JoinPathIm
Я не могу продолжить. Любой обходной путь fили это?Спасибо!