ImportError: tenorflow/python/_pywrap_tensorflow.so: неправильный класс ELF: ELFCLASS64

Я хочу интегрировать TenserFlow на robot nao, Я скопировал библиотеку Tensorflow в пути: /home/nao, и я делаю:

export PYTHONPATH="${PYTHONPATH}:/home/nao/tensorflow"

но если я импортирую lib tenorflow ... и запускаю, он печатает:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "tensorflow/__init__.py", line 23, in <module>
    from tensorflow.python import *
  File "tensorflow/python/__init__.py", line 48, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "tensorflow/python/pywrap_tensorflow.py", line 28, in <module>
    _pywrap_tensorflow = swig_import_helper()
  File "tensorflow/python/pywrap_tensorflow.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow', fp, pathname, description)
ImportError: tensorflow/python/_pywrap_tensorflow.so: wrong ELF class: ELFCLASS64

в чем проблема?

1 ответ

Как правило, вы не можете установить TensorFlow, скопировав существующую установку на другой компьютер. Сообщение об ошибке wrong ELF class: ELFCLASS64 означает, что вы пытаетесь загрузить 64-битный код (для собственной библиотеки TensorFlow) в 32-битный процесс. Есть два решения:

  1. Если у тебя есть x86_64 процессор, установите 64-разрядную версию Python и установите одну из стандартных версий Linux TensorFlow, используя pip,

  2. Если у вас 32-битный процессор, вам нужно собрать TensorFlow из исходного кода с соответствующими параметрами компиляции для целевой платформы. (Обратите внимание, что TensorFlow на 32-битных платформах официально не поддерживается, поэтому нет гарантии, что это будет работать, но по крайней мере один человек получил TensorFlow для сборки на 32-битной платформе ARM.)

Другие вопросы по тегам