经过这么多麻烦后,我构建了libxml from source。我执行了以下步骤
python2.7 setup.py build_ext -i -I /usr/include/libxml2 --with-xslt-config=/opt/xslt/bin/xslt-config
我尝试进入python shell并尝试import lxml
。它没用?
然后我进入了目录
/home/user/tmp/(extracted lxml directory/
并在linux命令提示符下输入
PYTHONPATH=src python27
然后我尝试import lxml
,然后就可以了。
src
文件夹包含文件夹名称lxml
所以我想知道,当我构建lxml
时,它意味着我总是需要该目录来使用它,或者我可以删除它。如果没有,那么我需要在哪个位置放置该文件夹,以便如果我运行python正常方式然后我可以访问该
答案 0 :(得分:1)
你告诉它build_ext
,所以它只编译它并且没有安装。如果你告诉它install
,它会将它安装在系统范围的目录中(但你需要写权限)或你指定的任何目录(使用--home
(用于安装为用户)或{{ 1}}(用于以root身份安装到非标准目录,例如--prefix
下)选项)。
答案 1 :(得分:0)
当你设置PYTHONPATH
时,你给它一个相对路径,所以它只能在那个文件夹中工作。如果指定绝对路径,例如:
export PYTHONPATH=/home/user/tmp/extracted_whatever
无论你现在在哪个文件夹,它都能正常工作。