Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 当包依赖项为';无法通过pip安装?_Python_Pip - Fatal编程技术网

Python 当包依赖项为';无法通过pip安装?

Python 当包依赖项为';无法通过pip安装?,python,pip,Python,Pip,因此,我编写了一个小型python包。我想将其设置为与pip一起安装。但这取决于另一个包(确切地说),据我所知,它不能与pip一起安装 我的选择似乎是 在我发送的包裹中包含odeintw。如果可以避免的话,我宁愿不这样做,因为我不想讨论这会对我使用的许可证产生什么影响,并确保给予适当的信任 将其设置为通过pip安装,但不考虑对odeintw的要求,只需在自述文件信息中说明用户还需要获得odeintw。这也不理想,因为如果一切正常,对用户来说会更好 有没有其他方法可以让pip安装odeintw?我

因此,我编写了一个小型python包。我想将其设置为与pip一起安装。但这取决于另一个包(确切地说),据我所知,它不能与pip一起安装

我的选择似乎是

  • 在我发送的包裹中包含odeintw。如果可以避免的话,我宁愿不这样做,因为我不想讨论这会对我使用的许可证产生什么影响,并确保给予适当的信任
  • 将其设置为通过pip安装,但不考虑对odeintw的要求,只需在自述文件信息中说明用户还需要获得odeintw。这也不理想,因为如果一切正常,对用户来说会更好

  • 有没有其他方法可以让pip安装odeintw?

    我可以通过以下方式安装您使用
    pip
    链接到的软件包:

    sudopip安装git+https://github.com/WarrenWeckesser/odeintw

    或者,您可以在软件包目录中创建一个包含以下内容的文件
    requirements.txt

    git+https://github.com/WarrenWeckesser/odeintw

    然后cd到目录并
    sudo pip install-r requirements.txt

    ,如下所示:

    您可以添加非pip可安装包,如下所示:

    setup(
        ...
        dependency_links=['http://github.com/user/repo/tarball/master#egg=package-1.0']
        ...
    )
    

    如果这是在
    requirements.txt
    文件中,那么
    pip是否会安装my_package_name
    (一旦设置完毕)执行此操作?我希望安装说明对其他用户来说尽可能简单。(谢谢——我不知道pip可以用来从github获取东西)我以前没有向pypi发布过包,所以我不能肯定。但是我相信这就是为什么在
    pip
    中存在
    -r
    标志的原因。否则,您从
    pip
    安装的任何软件包也需要您安装它的先决条件。给出的答案是正确的,只需加上我的两分钱-如果您依赖此软件包,您还可以提出一个拉取请求,添加构建软件包并将其上载到PyPI。非常适合这样做。如果维护人员放弃了它,而您的PR仍然不被接受,那么您可以放弃该项目,自己构建并上传到PyPI——只需在自述文件中提及原始项目即可。这样,您就可以让每个人都可以通过PyPI访问包。