pip / easy_installなしでpypiモジュールを手動でインストールする方法は?


91

gntpモジュールを使用して、C / C ++ソフトウェアのトースターのような通知を表示したいと思います。ソフトのすべての依存関係をパッケージ化して、別のコンピューターで自己実行可能にしたい。

gntpモジュールはpipインストーラーを介してのみ利用可能であり、使用できません(ソフトを実行しているコンピューターにはインターネット接続がありません):ソースからインストールするにはどうすればよいですか?

ユーザーにeasy_install / pipをインストールして、手動でpipパスを%PATHに追加することを強制したくありません。

PS:私はWindowsマシンでPython2.7を使用しています。


4
おそらくpython setup.py install
ニコラス

回答:


149
  1. パッケージをダウンロードする
  2. 圧縮されている場合は解凍します
  3. setup.pyを含むディレクトリにcdします
  4. ここに記載されているドキュメントにインストール手順が含まれている場合は、それ以外の方法で手順を読み、それに従ってください。
  5. 入力します python setup.py install

手順5では、管理者権限が必要になる場合があります。したがって、ここで行うことは、オペレーティングシステムによって異なります。たとえば、Ubuntuでは次のようになりますsudo python setup.py install

編集-kwatfordに感謝します(最初のコメントを参照)

上記の手順5で管理者権限の必要性を回避するために、-userフラグを使用できる場合があります。このようにして、現在のユーザーに対してのみパッケージをインストールできます。

ドキュメントによると:

ファイルはsite.USER_BASEのサブディレクトリにインストールされます(以降、ユーザーベースと表記します)。このスキームは、純粋なPythonモジュールと拡張モジュールを同じ場所(site.USER_SITEとも呼ばれます)にインストールします。Mac OSXを含むUNIXの値は次のとおりです。

詳細については、http//docs.python.org/2.7/install/index.htmlをご覧ください。


8
pip / easy_install / setup.pyは通常--user、現在のユーザーに対してのみパッケージをインストールするためのフラグを受け入れ、通常は管理者アクセスの必要性をバイパスします。
kwatford 2012年

3
何らかの理由で私はこれを見ます:ImportError: No module named 'setuptools'私はここでそれを見つけました:pypi.python.org/pypi/setuptools/1.1.6インストールは私に例外エラーを与えましたが、今ウェブソケットモジュールはまったく機能しません、私は与えると思いますこの時点で、Windows上のPython3.3を使用しています。
SSHこの

2
@SSHThis:インストールを機能させようとしているパッケージでも同じ結果が得られます。冗長性を上げると、「このディストリビューションがインストールされたため--multi-version [...]」が表示されますが、これはfalse(ここにインストールされているPythonのバージョンは1つのみ)であり、役に立たない(文書化された「python-m easy_install [...] 「まったく役に立ちません)、私はあなたと一緒です-Pythonは使用できません。
エリックタワーズ

1
私はpip install target-package通常、target-packageが依存する他のパッケージを自動的にインストール/更新すると思います。これはsetup.pyアプローチの場合に発生しますか?または、パッケージのzipにはすべての依存関係も含まれていますか?そして、zipの代わりにpythonホイールをダウンロードする必要があるということですか?同様にこれらのnumpyのために?zipを見つける場所がない場合(たとえば、numpyの場合)?(私はダウンロードごとに苦労しなければならない企業プロキシの背後で働くことを余儀なくされているので、これすべてを求めています: '()
Mahesha999 2018年

3
オフラインでパッケージをダウンロードすることはできません...ばかげた作業ネットワークの外部でパッケージをダウンロードしたい場合は、おそらく次のようにします。1.virtualenvを作成します。2.python setup.py installまたはpip installあなたが必要とするすべてのもの。3. pipフリーズを実行して、すべてのパッケージとすべてのバージョンのリストを取得します。これをファイル(従来はrequirements.txtと呼ばれていました)に保存できます。パッケージをダウンロードして別のマシンにコピーできるようにする場合pip download [options] -r <requirements file>は、これが最も効率的な方法ではありませんが、簡単です
Sheena

5

シーナの答えをさらに説明するために、別のツール(more-itertoolsなど)の依存関係としてsetup-toolsをインストールする必要がありました。

ダウンロード

Clone or downloadボタンをクリックして、方法を選択してください。これらをdev/py/libsユーザーのホームディレクトリのディレクトリに配置しました。それらはそこにインストールされないので、それらがどこに保存されているかは問題ではありません。

setup-toolsのインストール

setup-toolsディレクトリ内で以下を実行する必要があります

python bootstrap.py
python setup.py install

一般的な依存関係のインストール

これで、more-itertools direcotryに移動して、通常どおりにインストールできます。

  1. パッケージをダウンロードする
  2. アーカイブの場合は解凍します
  3. cd ...)を含むディレクトリに移動しますsetup.py
  4. ここに含まれるドキュメントにインストール手順が含まれている場合は、それ以外の方法で手順を読み、それに従ってください。
  5. 入力: python setup.py install

2

にもかかわらず、シーナの答えは仕事をして、pipちょうどそこに停止しません。

シーナの答えから:

  1. パッケージをダウンロードする
  2. 圧縮されている場合は解凍します
  3. setup.pyを含むディレクトリにcdします
  4. ここに含まれるドキュメントにインストール手順が含まれている場合は、それ以外の方法で手順を読み、それに従ってください。
  5. 入力します python setup.py install

この最後に、.eggファイルがになりsite-packagesます。ユーザーとして、これはあなたを悩ませるべきではありません。できますimportuninstall、パッケージは正常です。ただし、それを実行したい場合はpip方法では、次の手順を続行できます。

では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. find <pkg>-<version>.dist-info >> <pkg>-<version>.dist-info/RECORD>>上書きを防止することです。

さて、site-packagesディレクトリを見ると、なしでインストールしたことに気付くことはありませんpip。にuninstall、通常のことをするだけですpip uninstall <pkg>


Anacondaリポジトリからパッケージをインストールしていて、setup.pyファイルがない場合はどうなりますか?
交絡
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.