我是一名初级程序员,试图从此软件包中安装Python Protocol Buffers:http://code.google.com/p/protobuf/downloads/detail?name=protobuf-2.4.1.zip
自述文件指出:
1)确保您拥有Python 2.4或更高版本。如有疑问,请运行:
$ python -V
2)如果您没有安装setuptools,请注意它将是 运行setup.py后立即自动下载并安装。 如果您希望手动安装,可以通过以下方式安装 本页的说明:
http://peak.telecommunity.com/DevCenter/EasyInstall#installation-instructions
3)构建C ++代码,或者安装protoc的二进制发行版。如果 您安装二进制分发版,确保它是相同的 版本作为此包。如有疑问,请运行:
$ protoc --version
4)运行测试:
$ python setup.py test
如果某些测试失败,则此库可能无法正常运行 系统。继续自担风险。
请注意,某些版本的已知问题 Cygwin上的Python导致测试在打印后失败 错误:“sem_init:资源暂时不可用”。出现了 成为Cygwin或Python中的错误: http://www.cygwin.com/ml/cygwin/2005-07/msg01378.html 我们不知道是否或何时可以修复。我们也不知道 这个bug在实践中影响用户的可能性有多大。
5)安装:
$ python setup.py install
此步骤可能需要超级用户权限。 注意:要使用C ++实现,您需要安装C ++ protobuf运行时 相同版本的库并在此之前导出环境变量 步。有关更多详细信息,请参阅下面的“C ++实现”部分。
我已将protoc.exe的python和2.4.1版添加到我的PATH中。但是,当我尝试运行测试时,我收到一条错误消息,指出第38行的语法无效:
print "Can't find required file " + source
好的,所以它缺少括号。我添加它们,它遇到另外两个print语句语法错误消息。我解决了这些问题,它在'except'语句中遇到语法错误消息。我究竟做错了什么?
感谢。
答案 0 :(得分:3)
也许您使用的是Python 3?
您引用的代码仅适用于Python 2.X
答案 1 :(得分:1)
我遵循了相同的步骤,但我没有遇到任何错误。 请确保您获得正确的Python和protoc版本。
导出环境LD_LIBRARY_PATH变量。