Python 断裂';pip安装';到更小的步骤,以便我可以在安装包之前对其进行编辑

Python 断裂';pip安装';到更小的步骤,以便我可以在安装包之前对其进行编辑,python,pip,Python,Pip,我对pip的熟悉最终使我能够执行以下操作:“pip安装”、“pip卸载”和“pip列表”——将我要安装的包的名称作为单个参数 这种有限的知识使我至今仍能安装大多数简单的软件包,有时,当我运气好的时候,我甚至能安装需要编译的软件包。这对我来说都是魔法 我现在面临的情况是,我需要对C文件进行一点编辑(旁注:这似乎是“netifaces”软件包的一个已知解决方案,每个人似乎都对它感到满意。这本身就是一个惊人的现象) 因此,我想将安装分为几个小步骤: 下载egg文件(我已经找到了这个:pip安装——下载

我对pip的熟悉最终使我能够执行以下操作:“pip安装”、“pip卸载”和“pip列表”——将我要安装的包的名称作为单个参数

这种有限的知识使我至今仍能安装大多数简单的软件包,有时,当我运气好的时候,我甚至能安装需要编译的软件包。这对我来说都是魔法

我现在面临的情况是,我需要对C文件进行一点编辑(旁注:这似乎是“netifaces”软件包的一个已知解决方案,每个人似乎都对它感到满意。这本身就是一个惊人的现象)

因此,我想将安装分为几个小步骤:

  • 下载egg文件(我已经找到了这个:pip安装——下载)
  • 解压或解压包文件,到我可以编辑的程度
  • 做我的自定义修改
  • 建造
  • 进行安装

  • 除了第1步,我不知道如何继续。

    您可以从下载源代码,编辑它并使用setup.py buid,setup.py install

    首先,从作者的主页下载(由于某些原因,PyPI没有直接下载链接)。转到下载它的目录并解压缩:

    tar zxvf netifaces-0.8.tar.gz
    
    进入
    netifaces-0.8/
    目录,用您喜爱的编辑器编辑
    netifaces.c
    。保存文件。然后,构建模块:

    python setup.py build
    
    并安装它:

    sudo python setup.py install
    
    要进行测试,首先离开目录,然后启动python解释器并
    导入netifaces
    以查看它是否工作


    祝你好运

    下载所选软件包,提取文件,编辑所需内容。然后,用terminal\cmd打开目录并运行:

    python setup.py install
    
    根据您的操作系统,您可能需要在此命令开头添加一点sudo(如果您打算在Unix机器上全局安装)

    Modern pip(自1.10起) 使用:

    pip 1.5-1.9 使用
    pip安装-d

    pip install -d . --allow-external netifaces --allow-unverified netifaces netifaces
    tar xzf netifaces-0.8.tar.gz     # Unpack the downloaded file.
    cd netifaces-0.8
    
    现在进行修改并继续:

    pip install .
    
    旧pip(1.5之前)
  • 使用
    --无安装
    选项安装软件包;使用
    --no install
    选项,pip下载并解压缩所有软件包,但不实际安装软件包

    pip install --no-install netifaces
    
  • 更改为生成目录。如果您不知道构建目录在哪里,请再次发出上述命令,然后它将显示位置

    cd /tmp/pip_build_falsetru/netifaces
    
  • 进行自定义修改

  • 使用
    pip Install.
    (添加--如果您想保留构建目录,则无清除选项)或
    python setup.py Install安装包

    sudo pip install --no-clean . 
    

  • 谢天谢地,情况已不再如此。FWIW,如果使用MinGW工具链(它最初是在Windows上构建的),netifaces过去编译得很好。无论如何,最新版本不需要这种解决方法。看起来
    pip下载
    现在(至少是pip 9.0.1)比
    pip安装-d更受欢迎--allow external…
    ,它给出了很多不推荐使用的通知——主要是:
    不推荐使用:pip安装——下载已被不推荐使用,将来将被删除。Pip现在有一个下载命令,应该改为使用。
    @braham snyder,谢谢你提供的信息。我相应地更新了答案。
    sudo pip install --no-clean .