在我没有 sudo 权限的 ubuntu 系统上,我希望通过 pip
(准确地说是 matplotlib)安装一个包,但是系统上没有安装一些源包(但是二进制文件已安装)。
我已经创建了一个安装的虚拟环境,并下载了所需的源代码,但我无法将它们放在默认的 /usr/include/
等中。当 pip
运行 matplotlib 的 setup.py
脚本,报告源文件丢失。
有没有办法指示 pip
或 setup.py
在哪里寻找源代码?
ps: 设置CFLAGS
或CPPFLAGS
将下载的源码位置添加到编译指令中,但是setup.py
没有找到源,所以没有尝试编译一些组件(图形后端)。
pps:这类似于,但比 this question 更具体
最佳答案
我建议这样做:
- 在您自己的主目录中重建您需要的任何二进制文件(如果应用程序在系统上升级或与您的源版本不同,这也可以避免出现问题)。假设程序使用标准的配置脚本,你可以这样做
mkdir ~/dev cd app_src ./configure --prefix=~/dev make; make install
- 然后当你想安装 pip 时,执行
export PATH=~/dev/bin:$PATH
export LD_LIBRARY_PATh=~/dev/lib
(请注意,我应该建议将其指向您的 virtualenv,但我没有遇到您遇到的问题)
- 进行 pip 安装;如果没记错的话,pkg-config 应该会获取你想要的信息(这假设 matplotlib 使用 pkg-config 来确定包的存储位置)
关于python - pip 安装自定义包含路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19506983/