安装Python协议缓冲区的问题

时间:2012-06-05 19:56:17

标签: protocol-buffers

我是一名初级程序员,试图从此软件包中安装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'语句中遇到语法错误消息。我究竟做错了什么?

感谢。

2 个答案:

答案 0 :(得分:3)

也许您使用的是Python 3?

您引用的代码仅适用于Python 2.X

答案 1 :(得分:1)

我遵循了相同的步骤,但我没有遇到任何错误。 请确保您获得正确的Python和protoc版本。

导出环境LD_LIBRARY_PATH变量。