&引用;pip安装jep“;得到一个错误;ld:找不到-lpython2.7“的库;

&引用;pip安装jep“;得到一个错误;ld:找不到-lpython2.7“的库;,python,installation,pip,Python,Installation,Pip,==环境 Mac OSX 10.9.1 已安装python 2.7.3、python 3.3 python安装目录:/Library/Frameworks/python.framework 我尝试使用pip安装jep 但我犯了个错误 `ld: library not found for -lpython2.7` 我试图添加/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib 到$PATH 但它不起作

==环境

  • Mac OSX 10.9.1
  • 已安装python 2.7.3、python 3.3
  • python安装目录:
    /Library/Frameworks/python.framework
我尝试使用
pip安装jep

但我犯了个错误

`ld: library not found for -lpython2.7`
我试图添加
/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib
到$PATH

但它不起作用


有人能解决这个问题吗?

快速查看一下
jep
,它在
setup.py
中的安装过程似乎对在哪里可以找到Python解释器共享库进行链接做出了一些简化和错误的假设。在OSX上,它似乎允许库默认搜索路径默认为标准库路径,包括
/usr/lib
。如果您没有使用系统提供的python之一(如您的情况),则在那里找不到正确的库。
jep
应该做的是使用与正在使用的编译器对应的
python config
命令来查找共享库位置;例如,如果使用python.org 2.7:

$ /usr/local/bin/python2.7-config --ldflags
-L/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config
-ldl -framework CoreFoundation -lpython2.7
我还猜测您还没有在OS X 10.9中为Xcode 5安装完整的Xcode命令行工具包,因此在
/usr/lib
中没有
libpython2.7.dylib
。如果您这样做,请运行:

xcode-select --install
现在,您将找到
libpython2.7.dylib
的符号链接,如果重新运行
pip install jep
,您将不再获得
库未找到
错误。但是,
jep
扩展模块现在将链接到系统Python2.7,而不是您安装的较新的Python2.7

$ otool -L /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/jep.so
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/jep.so:
    /System/Library/Frameworks/Python.framework/Versions/2.7/Python (compatibility version 2.7.0, current version 2.7.5)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
应该是
/Library/Frameworks/Python.framework/Versions/2.7/Python

我建议您在
jep
project bug tracker上打开一个问题,以解决问题