69
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

pip installをオフラインで行う

使う環境が少ないので備忘録として書いております。
間違ってたり誤字脱字があれば指摘していただけると幸いです

環境

  • Windows10 32bit たまたま手元にあったのがこれだった。
  • Python 3.6.4

準備

オフライン環境でインストールしたパッケージは
先にダウンロードしておく必要がある

pip にダウンロード機能があるのでそれを利用する
※この段階ではネット環境があるPCで作業する必要がある

cmd
pip download -d src --no-binary :all: パッケージ名
or
pip download -d src パッケージ名

インストール時のビルドの関係で--no-binaryオプションをつけてダウンロードしてるとだめやつも
いるらしいので両方準備しておくのが先決

オプションに関しては下記参照
https://pip.pypa.io/en/stable/reference/pip_download/#

別途pipのバージョンも上げたいので
pipの最新版のパッケージも同様にダウンロードもしくはここから
現状時最新の19.1.1

オフラインインストール方法

準備でダウンロードしてきたパッケージ群を適当なフォルダに入れ込む

はじめにpipのバージョンを上げる

cmd
python -m pip install -U pip-19.1.1.tar.gz

pip listで確認19.1.1になってたらおk

ここから本題だけど実際インストールもさほど変わらない

cmd
pip install --no-deps ダウンロードしてきたやつ

これで大概のパッケージはインストールできるはず

今回、ハマったこと

virtualenvをインストールするのに上記のコマンドではエラーがでた

エラー内容
ERROR: Command "'C:\Users\ユーザー\AppData\Local\Programs\Python\Python36-32\python.exe' 'C:\Users\ユーザー\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pip'install --ignore-installed --no-user --prefix 'C:\Users\ユーザー\AppData\Local\Temp\pip-build-env-y15yfi5_\overlay' --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- 'setuptools >= 40.6.3' 'wheel >= 0.29.0'" failed with error code 1 in None

たぶん要約するとsetuptoolsとwheelが規定以上バージョンが無い
だと思うんですが

この2つを最新にしても変わらず・・・・
てか--no-deqsのオプションで依存パッケージに関しては無視するはずなのに・・・

というわけでインストールできなかったんですが

解決

pipのオプションに[--find-links]で依存パッケージ等必要ならこの先から見つけてね☆
みたいなのがあるらしいので試したら行けた

のでsetuptoolsとwheelの最新をpip download
オフラインPCの同一フォルダに格納しておく

cmd
pip install --find-links 2つが入ってるフォルダパス --no-deps virtualenv-~~~.tar.gz

~~~はバージョン

うぇーい出来た☆彡
一応不安になったので仮想環境作成したりもしたけど問題なく動作しているみたいだった

これでもうあらかたのパッケージはオフラインでもインストールできるんじゃないかなと思っております。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
69
Help us understand the problem. What are the problem?