経緯
Python で、地理空間データで座標変換を行うために osgeo を Install しようとしたところ非常に苦労。Linux まわりの情報はあまり落ちていなかったので忘備録。
※ AI に助けてもらいました。
環境
- OS: WSL2(Win11)
- python: 3.10.2
- 仮想環境: pipenv
Ubuntu 上で pipenv
を用いて GDAL をインストールするには、GDAL が依存するライブラリ(特に C ライブラリや必要な開発ファイル)を先にシステムへインストールしておく必要があります。その後、GDAL を正しくインストールできます。
以下は、段階的に GDAL をセットアップする手順を説明します。
1. Ubuntu に必要な依存関係をインストールする
GDAL のインストールに必要なパッケージ
GDAL パッケージ(Python バインディング)をインストールするために、まず GDAL の C ライブラリやヘッダーファイルなどの開発ツールをインストールする必要があります。以下を実行してください:
sudo apt update
sudo apt install build-essential libgdal-dev python3-dev
-
libgdal-dev
: GDAL の C ライブラリや開発ヘッダーファイル -
python3-dev
: Python の開発ヘッダーファイル(GDAL の Python バインディングに必要) -
build-essential
: コンパイルに必要な基本的なツール
インストールが完了したら、libgdal
のバージョンを確認してください:
gdal-config --version
例:3.4.1
などのバージョンが表示されます。この番号と一致する Python 用 GDAL バージョンを後でインストールします。
2. pipenv 環境を作成
新しいプロジェクトのフォルダを作成し、その中で pipenv
を使用して GDAL をセットアップします。
- プロジェクトディレクトリを作成して移動:
mkdir my_gdal_project
cd my_gdal_project
-
pipenv
環境をセットアップ: あなたがインストールしている Python バージョンに基づいて仮想環境を作成します(例では Python 3.10 を使用)。
pipenv --python 3.10
- GDAL をインストール: Pipenv を使って Python モジュールとしての GDAL をインストールします。
注意: インストール時に GDAL のバージョン番号を指定する場合が多いです(システムの GDAL バージョンと互換性を保つため)。以下のようにバージョンを直接指定できます:
pipenv install gdal==3.4.1
※ 3.4.1
の部分は、gdal-config --version
の出力に一致させます。
4. インストールの確認
インストール後、仮想環境を有効化して GDAL をインポートし、動作確認を行います:
- 仮想環境を有効化:
pipenv shell
- Python インタプリタで GDAL をインポート:
from osgeo import gdal
print(gdal.VersionInfo())
実行結果として GDAL のバージョンが表示されれば、セットアップは完了です。