Python 重新安装--enable-unicode=ucs4 和 lxml 未定义符号:PyUnicodeUCS2_DecodeLatin1

Python 重新安装--enable-unicode=ucs4 和 lxml 未定义符号:PyUnicodeUCS2_DecodeLatin1

我正在使用 Ubuntu Server 14.04。我需要为我的新 django 项目使用选项编译 python ./configure --enable-unicode=ucs4。我使用 ucs4 重新安装了 python。

现在,当我尝试运行 scrapy spider 时,出现如下错误:

ImportError: /usr/local/lib/python2.7/site-packages/lxml-3.4.2-py2.7-linux-x86_64.egg/lxml/etree.so: undefined symbol: PyUnicodeUCS2_DecodeLatin1

我尝试再次重新安装python但出现错误:

Compiling /usr/local/lib/python2.7/zipfile.py ...
make: *** [libinstall] Error 1

然后我尝试重新安装 libxml,但这也引发了一个错误:

/usr/bin/ld: /usr/local/lib/python2.7/config/libpython2.7.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/python2.7/config/libpython2.7.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status

Scrapy 重新安装没有帮助。

我该如何修复它?

答案1

我解决了。

我手动删除了包含导致错误的 python dist 的目录。

sudo rm -R /usr/local/lib/python2.7 

然后我从源手动重新安装了 python、scrapy 和 django。

相关内容