我的python軟件包包含很多由python-protobuf(Arch Linux上的python2-protobuf-2.5.0)編譯的文件,我在Ubuntu服務器12.04.3上安裝了軟件包蟒蛇-protobuf的-2.4.1),試運行代碼,並擊中了以下錯誤:如何處理python protobuf的不同版本
from google.protobuf.internal import enum_type_wrapper
ImportError: cannot import name enum_type_wrapper
我想這是因爲我的包中的protobuf的模塊通過的protobuf-2.5.0編譯和他們不這樣做與protobuf-2.4.1一起工作。
我不知道我的代碼可能運行的環境,protobuf的版本可能會有所不同。如何使我的包與protobuf 2.4和2.5一起工作? (可能的方法:在我的包中包含兩組不同的protobuf庫(一個由2.4.1編譯,另一個由2.5.0編譯),在運行時獲取google.protobuf版本並選擇要導入的protobuf庫。是否有可能?