Add better error message on Python library version imcompatibility (issue #240)
authorPetteri Aimonen <jpa@git.mail.kapsi.fi>
Sat, 25 Feb 2017 19:31:06 +0000 (21:31 +0200)
committerPetteri Aimonen <jpa@git.mail.kapsi.fi>
Sat, 25 Feb 2017 19:31:06 +0000 (21:31 +0200)
generator/nanopb_generator.py

index 9cce6a5..b547317 100755 (executable)
@@ -32,6 +32,20 @@ except:
 try:
     import proto.nanopb_pb2 as nanopb_pb2
     import proto.plugin_pb2 as plugin_pb2
+except TypeError:
+    sys.stderr.write('''
+         ****************************************************************************
+         *** Got TypeError when importing the protocol definitions for generator. ***
+         *** This usually means that the protoc in your path doesn't match the    ***
+         *** Python protobuf library version.                                     ***
+         ***                                                                      ***
+         *** Please check the output of the following commands:                   ***
+         *** which protoc                                                         ***
+         *** protoc --version                                                     ***
+         *** python -c 'import google.protobuf; print(google.protobuf.__file__)'  ***
+         ****************************************************************************
+    ''' + '\n')
+    raise
 except:
     sys.stderr.write('''
          ********************************************************************