3

在我没有 sudo 特权的 ubuntu 系统上,我希望通过pip(准确地说是 matplotlib)安装一个包,但是系统上没有安装一些源包(但是安装了二进制文件)。

我已经创建了一个要安装的虚拟环境,并且已经下载了所需的源代码,但是我不能将它们放在默认/usr/include/等中。当pip运行 matplotlib 的setup.py脚本时,源文件被报告为丢失。

有没有办法指导pipsetup.py在哪里寻找来源?

ps:设置CFLAGSCPPFLAGS添加下载源的位置编译指令,但setup.py没有找到源,所以没有尝试编译一些组件(图形后端)。

pps:这类似于,但比这个问题更具体

4

1 回答 1

0

我建议这样做:

  • 在您自己的主目录中重建您需要的任何二进制文件(如果应用程序在系统上升级或与您的源版本不同,这也可以避免出现问题)。假设程序使用标准配置脚本,你可以做
mkdir ~/dev
cd app_src
./configure --prefix=~/dev
make; make install
  • 然后,当您想进行 pip 安装时,请执行

导出 PATH=~/dev/bin:$PATH
导出 LD_LIBRARY_PATH=~/dev/lib

(注意,我应该建议将它指向您的 virtualenv,但我没有遇到您遇到的问题)

  • 进行 pip 安装;如果有记忆,pkg-config 应该获取您想要的信息(这假设 matplotlib 使用 pkg-config 来确定包的存储位置)
于 2013-10-22T01:03:34.053 回答