我正在使用 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。