最新の更新日
Nov 23, 2024 8:38 AM
記事作成日
Nov 23, 2024 8:16 AM
Category
開発・プログラミング | エンジニアリング
Tag Library
Target Keywords
vol.
Podcast
小ネタです。GitHub上からcloneしたリポジトリなど、あらかじめ用意されたrequirements.txtからライブラリをインストールしたい場合があります。
しかし、requirements.txtはpip環境下で利用されるもので、ryeでは直接利用することはできません。
通常、pipを利用したrequirementx.txtからの一括ライブラリインストールは下記のように行われます。
pip install -r requirements.txt
venvをアクティベートしてからpipで一括インストールしても動作せず
調べると「ryeはvenvをラップしているので、venvをアクティベートしてからpipでインストールすればよい」との記述がありましたが、私の環境では下記ではうまく動作しませんでした。
# Macの場合
$ source .venv/bin/activate
$ pip3 install -r requirements.txt
# Error
error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
xyz, where xyz is the package you are trying to
install.
If you wish to install a Python library that isn't in Homebrew,
use a virtual environment:
python3 -m venv path/to/venv
source path/to/venv/bin/activate
python3 -m pip install xyz
If you wish to install a Python application that isn't in Homebrew,
it may be easiest to use 'pipx install xyz', which will manage a
virtual environment for you. You can install pipx with
brew install pipx
You may restore the old behavior of pip by passing
the '--break-system-packages' flag to pip, or by adding
'break-system-packages = true' to your pip.conf file. The latter
will permanently disable this error.
If you disable this error, we STRONGLY recommend that you additionally
pass the '--user' flag to pip, or set 'user = true' in your pip.conf
file. Failure to do this can result in a broken Homebrew installation.
Read more about this behavior here: <https://peps.python.org/pep-0668/>
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
requirements.txtの内容を展開して、通常のrye addで一括インストール
考えてみれば、やりたいことは単に「requirements.txtに記載のあるライブラリをrye環境下でインストールさせたい」ということ。
そこで、通常のryeでのインストール方法であるrye addを用いて、requirements.txtの内容を展開させたうえで一括インストールします。
# Ryeプロジェクトを初期化
$ rye init
# requirements.txtの中身を読み込み展開して一括インストール
$ rye add $(cat requirements.txt)
# インストールされたライブラリ一覧を確認
$ rye list
# 同期
$ rye sync
こちらでうまくryeにてインストールさせることができました。お困りの方は試してみてください。
Category: 開発・プログラミング | エンジニアリング
Tags:
PythonでYouTube Data API v3のSearch:Listを操作: YouTubeデータ分析
PythonでYouTube Data API v3のSearch:Listを操作: YouTubeデータ分析
開発・プログラミング | エンジニアリング
Jun 14, 2023 3:26 PM
PythonでYouTube Data APIを利用!GCPでのAPIキー作成から解説
PythonでYouTube Data APIを利用!GCPでのAPIキー作成から解説
開発・プログラミング | エンジニアリング
Jun 12, 2023 12:36 PM