如何在OSX10.8上更正我的Python/pip配置?

2024-03-29 14:02:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经安装了一个运行OSX10.8和Xcode4.4的MacBookPro。我最近安装了lxml,但是当我去导入它时,得到了以下结果:

MacBook-Pro:~ jedc$ sudo pip install lxml==2.3.5
Password:
Downloading/unpacking lxml==2.3.5
  Downloading lxml-2.3.5.tar.gz (3.2Mb): 3.2Mb downloaded
  Running setup.py egg_info for package lxml
    Building lxml version 2.3.5.
    Building without Cython.
    Using build configuration of libxslt 1.1.26
    warning: no previously-included files found matching '*.py'
Installing collected packages: lxml
  Running setup.py install for lxml
    Building lxml version 2.3.5.
    Building without Cython.
    Using build configuration of libxslt 1.1.26
    building 'lxml.etree' extension
    /usr/bin/cc -fno-strict-aliasing -O3 -w -pipe -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/include/libxml2 -I/usr/local/Cellar/python/2.7.1/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.4-x86_64-2.7/src/lxml/lxml.etree.o -w -flat_namespace
    /usr/bin/cc -L/usr/local/Cellar/readline/6.1/lib -bundle -undefined dynamic_lookup -L/usr/local/Cellar/readline/6.1/lib build/temp.macosx-10.4-x86_64-2.7/src/lxml/lxml.etree.o -lxslt -lexslt -lxml2 -lz -lm -o build/lib.macosx-10.4-x86_64-2.7/lxml/etree.so
    building 'lxml.objectify' extension
    /usr/bin/cc -fno-strict-aliasing -O3 -w -pipe -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/include/libxml2 -I/usr/local/Cellar/python/2.7.1/include/python2.7 -c src/lxml/lxml.objectify.c -o build/temp.macosx-10.4-x86_64-2.7/src/lxml/lxml.objectify.o -w -flat_namespace
    /usr/bin/cc -L/usr/local/Cellar/readline/6.1/lib -bundle -undefined dynamic_lookup -L/usr/local/Cellar/readline/6.1/lib build/temp.macosx-10.4-x86_64-2.7/src/lxml/lxml.objectify.o -lxslt -lexslt -lxml2 -lz -lm -o build/lib.macosx-10.4-x86_64-2.7/lxml/objectify.so

Successfully installed lxml
Cleaning up...
MacBook-Pro:~ jedc$ python
Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import lxml
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named lxml

很明显,自从lxml成功安装之后,我得到了一些不正确的配置,但是Python找不到它。以下是其他信息:

MacBook-Pro:~ jedc$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
MacBook-Pro:~ jedc$ which pip
/usr/local/bin/pip
MacBook-Pro:~ jedc$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/go/bin:/Users/jedc/.rvm/bin

我的~/.bash_配置文件包含以下内容:

PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

有人告诉我(在之前的某个时候)安装了一个非苹果默认版本的Python,很可能是我搞砸了。有谁能帮我弄清楚我需要做什么来诊断并修复它吗?


Tags: buildsrcbinlibusrlocallxmlx86
1条回答
网友
1楼 · 发布于 2024-03-29 14:02:39

您的pip命令是为不同的python安装的(一个安装在/usr/local/bin中)。您会发现,对于/usr/local/bin/python,导入是有效的。

您需要install pip分别为您的另一个python(位于/Library/Frameworks/Python.framework/Versions/2.7/bin/python中的python)安装lxml以用于该python版本。

使用/Library/Frameworks/Python.framework/Versions/2.7/pip确保在安装pip后使用正确的pip命令安装lxml

相关问题 更多 >