Я написал простой код тензорного потока MNIST...
Код выполняется очень хорошо, когда я запускаю код с помощью PyCharm.
.
Но на самом деле я хотел запустить этот скрипт в терминале с помощью команды python ./mnist.py, поэтому, когда я запускаю код в терминале, я получаю следующую ошибку.
dyld: warning, LC_RPATH $ORIGIN/../../_solib_darwin_x86_64/_U_S_Stensorflow_Spython_C_Upywrap_Utensorflow_Uinternal.so___Utensorflow in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so being ignored in restricted program because it is a relative path
Traceback (most recent call last):
File "./model_load.py", line 10, in <module>
import tensorflow as tf
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/__init__.py", line 24, in <module>
from tensorflow.python import *
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 52, in <module>
from tensorflow.core.framework.graph_pb2 import *
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/core/framework/graph_pb2.py", line 6, in <module>
from google.protobuf import descriptor as _descriptor
ImportError: No module named google.protobuf
Люди сказали, что это связано с OSX. Есть предупреждение о LC_RPATH.
Теперь я хочу знать, возникает ли ошибка из-за предупреждения ImportError или LC_RPATH.
а если ImportError и предупреждение тут отдельная тема.
Как я могу решить эту проблему??
Я использую osx Mojave, pyhton2.7 и tensorflow 1.5.0.






Я решил свою проблему. Ошибка и предупреждение были независимыми.
Mac OS может запускать тензорный поток в терминале независимо от того, появляется предупреждение или нет.
Основная проблема заключалась в том, что python не мог распознать модуль google.protobuf, даже если он был установлен...
Сначала проверьте модуль protobuf и модуль google.
.
pip install google и pip install protobuf
Если вы получили ту же ошибку после ввода обеих команд, это означает, что модуль установлен, но python не может его найти. Поэтому нам нужно изменить модуль, чтобы python мог его распознать.
Перейдите в каталог, где установлен пакет Python.
.
В моем случае /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages.
В этом каталоге найдите каталог google и проверьте, какие файлы находятся внутри.
В моем случае существовал только protobuf.
.
По этой причине python не смог найти модуль google.protobuf.
.
Нам нужно добавить файл __init__.py, чтобы python мог найти модуль в каталоге.
Поэтому я добавляю пустой файл __init__.py в папку google и могу решить проблему.
Я надеюсь, что кто-то, у кого есть такие проблемы, как я, сможет решить их с помощью вышеуказанного метода.