clw*_*wen 16 python installation install pip
我正在尝试安装一个库pyleargist.它需要libfftw3手动安装另一个我安装的lib .由于我没有root权限,我必须libfftw3在我的主目录下安装:~/usr/include和~/usr/lib.然后我按照这篇文章:https://superuser.com/questions/242190/how-to-install-matplotlib-on-os-x,添加:
export LDFLAGS="-L~/usr/lib"
export CFLAGS="-I~/usr/include
Run Code Online (Sandbox Code Playgroud)
所以pip知道它必须咨询/usr以获取包含(.h文件)和lib( .a,*.so文件).然而,在跑步时pip install --user pyleargist,它抱怨:
gcc-4.4.real: src/leargist.c: No such file or directory
gcc-4.4.real: no input files
error: command 'gcc' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
我想发生的事情是路径不正确,以至于无法找到*.c文件(我认为pip应该已经将文件下载到某处但不确定它在哪里).
所以我的问题有以下几点:1)在这种特殊情况下,我怎么能安装pyleargist与include和lib路径下~/usr?2)更一般地说,如何提供额外的路径,pip以便它知道在默认路径中找不到附加包含文件或库的位置?
ps我在一ubuntu台没有sudo特权的机器上.
参考:
https ://pypi.python.org/pypi/pyleargist/1.0.1
http://www.fftw.org/
hah*_*ile 21
pip有--global-option一面旗帜
您可以使用它来传递其他标志build_ext.
例如,要添加-I标志:
pip install --global-option=build_ext --global-option="-I/home/users/abc/include/" pyOpenSSL
Run Code Online (Sandbox Code Playgroud)
如果您没有 root,您可以获得一个虚拟环境,无需 root 即可获得虚拟环境,并且您的路径将位于 home
curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.10.1.tar.gz
tar xvfz virtualenv-1.10.1.tar.gz
cd virtualenv-1.10.1.tar.gz
python virtualenv.py myVE
Run Code Online (Sandbox Code Playgroud)
那么你的路径就设置在你的家中:
cd myVE/bin
./python
>>> import sys
>>> sys.path
['', '/home/foobar/temp/virtualenv-1.10.1/myVE/lib/python33.zip', '/home/foobar/temp/virtualenv-1.10.1/myVE/lib/python3.3', '/home/foobar/temp/virtualenv-1.10.1/myVE/lib/python3.3/plat-linux', '/home/foobar/temp/virtualenv-1.10.1/myVE/lib/python3.3/lib-dynload', '/usr/lib64/python3.3', '/usr/lib/python3.3', '/usr/lib/python3.3/plat-linux', '/home/foobar/temp/virtualenv-1.10.1/myVE/lib/python3.3/site-packages']
>>>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13174 次 |
| 最近记录: |