How to manually install a pypi module without pip/easy_install?

我想使用 Gntp 模块来显示 C/C + + 软件的类似烤面包机的通知。我想把软件的所有依赖关系打包在另一台计算机上自动执行。

gntp模块只能通过 pip安装程序使用,不能使用(运行该软件的计算机没有互联网连接)

如何从源代码安装它?

我不希望强迫用户安装 easy_install/pip并手动将 pip 路径添加到 %PATH

PS: 我正在 Windows 机器上使用 Python 2.7。

362680 次浏览
  1. Download the package
  2. 如果拉上拉链就拉开
  3. cd into the directory containing setup.py
  4. 如果文档中包含任何安装说明,请阅读并遵循说明 否则
  5. type in python setup.py install

对于步骤5,您可能需要管理员权限。您在这里做什么取决于您的操作系统。例如在 Ubuntu 中,你会说 sudo python setup.py install


编辑 -感谢 kwatford (见第一条评论)

要在上面的步骤5中绕过对管理员权限的需求,您可以使用 --user标志。通过这种方式,您可以只为当前用户安装包。

医生说:

文件将被安装到 site.USER _ BASE 的子目录中(以下写作 userbase)。该方案将纯 Python 模块和扩展模块安装在同一位置(也称为 site.USER _ SITE)。

更多细节可以在这里找到: http://docs.python.org/2.7/install/index.html

虽然 Sheena 的的答案做的工作,pip不只是在那里停止。

From Sheena's answer:

  1. 下载软件包
  2. 如果拉上拉链就拉开
  3. Cd 到包含 setup.py 的目录中
  4. 如果文档中包含任何安装说明,请阅读并遵循说明 否则
  5. 输入 python setup.py install

最后,您将得到 site-packages中的 .egg文件。 As a user, this shouldn't bother you. You can import and uninstall the package normally. However, if you want to do it the pip way, you can continue the following steps.

site-packages目录中,

  1. unzip <.egg file>
  2. EGG-INFO目录重命名为 <pkg>-<version>.dist-info
  3. 现在您将看到一个包名为 <pkg-directory>的单独目录
  4. find <pkg-directory> > <pkg>-<version>.dist-info/RECORD
  5. >>是为了防止覆盖。

现在,查看 site-packages目录,您将永远不会意识到您没有安装 pip

为了进一步解释 Sheena 的回答,我需要安装 setup-tools作为另一个工具的依赖项,例如 More-itertools

下载

单击 Clone or download按钮并选择您的方法。我将它们放在用户主目录中的 dev/py/libs目录中。它们保存在哪里并不重要,因为它们不会安装在那里。

安装 setup-tools

You will need to run the following inside the 安装工具 directory.

python bootstrap.py
python setup.py install

一般依赖项安装

现在您可以导航到 more-itertools目录并像往常一样安装它。

  1. 下载软件包
  2. 如果是档案,就解压
  3. Navigate (cd ...) into the directory containing setup.py
  4. If there are any installation instructions contained in the documentation contained herein, read and follow the instructions OTHERWISE
  5. 输入: python setup.py install