如何在不丢失site-packages的情况下,用UCS-4替换Python 2.65 UCS-2版本?
我下载了Python 2.6.5的源代码,为OS 10.6.4的64位系统编译并安装了很多依赖库。然后我打开了我们团队最近在做的一个大项目,运行了单元测试,结果有一个测试失败了,因为我安装的Python是用UCS-2构建的(我之前不知道这是OS X的默认设置!)
简单来说:
我在编译Python的时候没有加上 --enable-unicode=ucs4
这个选项。
(我后来发现这是必要的:http://copia.posterous.com/confusion-over-python-storage-form-for-unicod)
现在我想纠正这个问题,但又不想丢失我在site-packages里放的所有东西。
这可能吗?如果可以的话,怎么做呢?
谢谢! Michaux
1 个回答
1
你可以把 /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages
这个文件夹保存起来,比如打包成一个 .tar.bz2
文件。但是,如果你恢复这个文件夹里的内容,里面的 .so
文件可能会出现问题,特别是如果它们涉及到 Python 的 Unicode 对象时。所以,包含这些 .so
文件的那些包,你在新版本的 Python 安装好后需要重新构建或者重新安装!希望你在 site-packages 里放的东西不至于多到“全部”都需要重新处理(希望如此)。