Importing caffe results in ImportError: "No module named google.protobuf.internal" (import enum_type_wrapper)

PyNerd picture PyNerd · Jun 6, 2016 · Viewed 46k times · Source

I installed Anaconda Python on my machine. When I start the Python Interpreter and type "import caffe" in the Python shell, I get the following error:

ImportError: No module named google.protobuf.internal

I have the following files:

wire_format_lite_inl.h
wire_format_lite.h
wire_format.h
unknown_field_set.h
text_format.h
service.h
repeated_field.h
reflection_ops.h
message_lite.h
message.h
generated_message_util.h
extension_set.h
descriptor.proto
descriptor.h
generated_message_reflection.h
generated_enum_reflection.h
dynamic_message.h
descriptor.pb.h
descriptor_database.h

What files do I need so the import will work? Is there an "internal.h" file that is required?

Answer

Jayant Agrawal picture Jayant Agrawal · Jun 19, 2016

This is probably because you have two python environments in your machine, the one provided by your linux distribution(pip) and the other by the anaconda environment (/home/username/anaconda2/bin/pip).

Try installing protobuf for both environments to be sure

pip install protobuf

/home/username/anaconda2/bin/pip install protobuf