gpt4 book ai didi

python - 为什么 pip install -e 成功后,pip install from github 却失败?

转载 作者:行者123 更新时间:2023-12-01 08:18:31 25 4
gpt4 key购买 nike

有一个 git 存储库位于 https://github.com/Ivancic91/LammpsIO我可以通过克隆并运行 pip install -e/path/to/LammpsIO 来以“可编辑”模式安装。当我这样做时,我能够在 python 中成功运行 import LammpsIO

但是,当我使用 pip install git+https://github.com/Ivancic91/LammpsIO.git 直接从 github pip install 时,我遇到了问题。实际的 pip install 命令看起来成功,并显示通常的成功消息:

Successfully built LammpsIO
Installing collected packages: LammpsIO
Successfully installed LammpsIO-0.0.1

但是当我尝试导入 LammpsIO 时,我收到 ModuleNotFoundError: No module named 'LammpsIO'

我认为这可能是某种路径错误,但是 which pipwhich python 都指向同一个 conda 环境文件夹。

这里还有一些输出,以防有人需要。

pip install git+...之后:

  1. conda list 返回:

krb5 1.16.3 h24a3359_1000 conda-forge
lammpsio 0.0.1 pypi_0 pypi
libcurl 7.64.0 h76de61e_0 conda-forge

  • pip list 返回:
  • kiwisolver 1.0.1
    LampsIO 0.0.1
    标记安全 1.1.0

    pip install -e ...之后:

    1. conda list 返回:

    krb5 1.16.3 h24a3359_1000 conda-forge
    lammpsio 0.0.1 dev_0 libcurl 7.64.0 h76de61e_0 conda-forge

  • pip list 返回:
  • kiwisolver 1.0.1
    LammpsIO 0.0.1/path/to/LammpsIO/src
    标记安全 1.1.0

    我猜测这与 LammpsIO 的非正统结构有关,其 setup.py 文件包含:

    package_dir = {'': 'src'},
    packages = find_packages(where='src'),

    但令我惊讶的是,来自 github 的 pip install 在 pip install -e/path 有效的情况下失败了。

    最佳答案

    你的推理在这里似乎是合理的。我认为你正在尝试的事情会起作用。我创建了一个新的 virtualenv 并尝试了自己的 github 安装。然后我查看了站 pip 包。我所看到的很奇怪。有一个包含基本元数据的“LammpsIO-0.0.1.dist-info”目录,但没有 Lammps 包本身。我做了“发现”。 -iname "*mmps*"' 在站 pip 包中,并且仅获取该信息目录。所以看来该软件包实际上并未安装。 - 当我执行“pip list”时,LammpsIO 确实会出现。

    如果您通过下载 zip 并执行“pip install [zip]”来“安装”软件包,您会从 pip 获得相同的输出,并最终遇到相同的问题。所以和直接从github安装没有关系。它与实际安装包有关,而不是仅仅将其源链接到您的环境中。

    我的猜测是 Lammps 安装程序已经损坏 - 因为“-e”不安装任何东西,而只是创建一个链接,这可以解释为什么它可以工作,但常规安装却不能。

    关于python - 为什么 pip install -e 成功后,pip install from github 却失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54845408/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com