Open3

Python, asdf, poetry周り自分用メモ

shrytshryt

ubuntuにおいて、asdfのインストールとpython、poetryのインストール、venv環境のローカル化配下の通り

# asdfインストール
$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.13.1
# pythonのプラグインを追加
$ asdf plugin-add python
# poetryのプラグインを追加
$ asdf plugin-add poetry
# poetryをインストール
$ asdf install poetry latest
# poetryをグローバルに適用
$ asdf global poetry latest
# poetryで、venvをプロジェクトのフォルダに作成するよう設定
$ poetry config virtualenvs.in-project true

出展:
https://asdf-vm.com/guide/getting-started.html

shrytshryt

C++でPython.hを使いたいときなどは、通常はpython-devなどをインストールするが、asdfを使う場合は以下のようにpythonをインストールする。

$ env PYTHON_CONFIGURE_OPTS="--enable-shared" asdf install python 3.11.5

使うときは、

$ cmake -S . -B build \
-D PYTHON_LIBRARIES=~/.asdf/installs/python/3.11.5/lib \
-D PYTHON_INCLUDE_DIRS=~/.asdf/installs/python/3.11.5/include/

とする。python-devをインストールしていると、CMakeのfind_packagePythonLibsが見つかり、PYTHON_LIBRARIESPYTHON_INCLUDE_DIRSが上書きされてしまうので、削除する。

# find_package(PythonLibs REQUIRED)
include_directories(${PYTHON_INCLUDE_DIRS})

出展:
https://qiita.com/namahoge/items/b7964bdf6413d4c04931
https://github.com/asdf-community/asdf-python/issues/38