Я пытаюсь заставить TensorFlow работать на C++ в первый раз, следуя инструкциям на странице => это.
В PowerShell я выполнил
.\build.ps1 -//tensorflow:libtensorflow_cc.so -BuildCppAPI
но во время выполнения я получаю следующее:
ERROR: Invalid options syntax: -//tensorflow:libtensorflow_cc.so
Я понятия не имею, что это значит, и я даже не знаю, какая система выводит ошибку или какое действие не выполняется. Ниже приведена последняя часть того, что я вижу в окне PowerShell.
You have bazel 0.20.0 installed.
Do you wish to build TensorFlow with XLA JIT support? [y/N]: n
No XLA JIT support will be enabled for TensorFlow.
Do you wish to build TensorFlow with ROCm support? [y/N]: n
No ROCm support will be enabled for TensorFlow.
Do you wish to build TensorFlow with CUDA support? [y/N]: n
No CUDA support will be enabled for TensorFlow.
Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is /arch:AVX]:
Would you like to override eigen strong inline for some C++ compilation to reduce the compilation time? [Y/n]: n
Not overriding eigen strong inline, some compilations could take more than 20 mins.
Preconfigured Bazel build configs. You can use any of the below by adding "--config=<>" to your build command. See .bazelrc for more details.
--config=mkl # Build with MKL support.
--config=monolithic # Config for mostly static monolithic build.
--config=gdr # Build with GDR support.
--config=verbs # Build with libverbs support.
--config=ngraph # Build with Intel nGraph support.
--config=dynamic_kernels # (Experimental) Build kernels into separate shared objects.
Preconfigured Bazel build configs to DISABLE default on features:
--config=noaws # Disable AWS S3 filesystem support.
--config=nogcp # Disable GCP support.
--config=nohdfs # Disable HDFS support.
--config=noignite # Disable Apacha Ignite support.
--config=nokafka # Disable Apache Kafka support.
--config=nonccl # Disable NVIDIA NCCL support.
WARNING: The following rc files are no longer being read, please transfer their contents or import their path into one of the standard rc files:
c:\tf_windows_build\tensorflow-windows-build-script-master\source/.bazelrc
Starting local Bazel server and connecting to it...
ERROR: Invalid options syntax: -//tensorflow:libtensorflow_cc.so
INFO: Invocation ID: 8f02ecb6-9ff4-429a-841d-500d4246669f
WARNING: The following rc files are no longer being read, please transfer their contents or import their path into one of the standard rc files:
c:\tf_windows_build\tensorflow-windows-build-script-master\source/.bazelrc
INFO: Invocation ID: 5fd16822-1851-41f6-ac48-fdda432096f5





ERROR: Invalid options syntax: -//tensorflow:libtensorflow_cc.soI have no idea what this means
Это буквально означает именно то, что написано: вы использовали неверный синтаксис опций.
Оказывается, вы немного невнимательно прочитали инструкцию. Формат команды:
.\build.ps1 -BazelBuildParameters <parameter_string> [optional_parameters]
Вы удалили текст «BazelBuildParameters», поэтому вместо этого делаете следующее:
.\build.ps1 -<parameter_string> [optional_parameters]
и компьютер понятия не имеет, что с ним делать.
Я думаю, вы хотели что-то вроде этого:
.\build.ps1 -BazelBuildParameters //tensorflow:libtensorflow_cc.so -BuildCppAPI
Точно... Я был сбит с толку, потому что build.ps1 сделал так много вещей (занявших довольно много времени), все выглядело правильно, что, когда произошла ошибка, я предположил, что это должна быть какая-то проблема глубоко внутри скрипта, а не что-то такое простое как командная строка самого скрипта.
Однако это указывает вам прямо на проблему, даже цитируя неправильную часть команды.
Пожалуйста, внимательно посмотрите на пример на странице, на которую вы ссылаетесь. Этот пример не говорит вам бежать
.\build.ps1 -//tensorflow:libtensorflow_cc.so -BuildCppAPI.