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-битный процесс. Есть два решения:
Если у тебя есть
x86_64
процессор, установите 64-разрядную версию Python и установите одну из стандартных версий Linux TensorFlow, используяpip
,Если у вас 32-битный процессор, вам нужно собрать TensorFlow из исходного кода с соответствующими параметрами компиляции для целевой платформы. (Обратите внимание, что TensorFlow на 32-битных платформах официально не поддерживается, поэтому нет гарантии, что это будет работать, но по крайней мере один человек получил TensorFlow для сборки на 32-битной платформе ARM.)