6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MIERUNEAdvent Calendar 2024

Day 23

Windows向けのQGIS 3.40ポータブル版のクロスビルド

Last updated at Posted at 2024-12-22

概要

  • Linux上のクロスビルドがPR時にCI/CDのフローで実行されています
  • ビルドのディストロはFedora
  • コンパイル専用の環境をVirtual BoxのゲストOS上に構築します

大まかなフロー

QGISのビルド結果

スクリーンショット 2024-12-17 20.50.18.png
スクリーンショット 2024-12-17 20.49.41.png

  • ソースコードを編集しビルドすることでカスタムされたQGISを構築可能です
  • ポータブル版のQGISがビルドされるので任意のディレクトリ、USBから実行可能です
  • GRASS GISやSaga GISは付属しません

環境構築(初回のみ)

  1. VirtualBoxをダウンロードしてWindowsにインストールをします
  2. Fedora39 WorkStationのLive DVDをダウンロードします
  3. VirtualBoxを起動し仮想マシン(ゲストOS)を新規作成します
    image.png
  4. 仮想マシンの作成ウィザードを進めます
    1. 名前を設定 タイプ:Linux バージョン:Fedora(64-bit)に設定します
      image.png
    2. メモリーサイズは8GB以上を推奨します
      image.png
    3. ハードディスクはデフォルトで作成します
      image.png
    4. ハードディスクのファイルタイプはデフォルトで次へ
      image.png
    5. 物理ハードディスクにあるストレージはデフォルトで次へ
      image.png
    6. 上限のハードディスクファイルサイズは余裕をもって100GB程度を設定
      image.png
  5. 仮想マシンの設定を行います
    1. ビルド処理の速度向上のためプロセッサー数は4以上に設定します
      image.png
    2. ゲストOSの操作性向上のためビデオメモリーは128MBに設定します
      image.png
    3. Fedora 39 WorkStationのライブDVDのisoをIDEに追加することでFedoraのインストールが可能になります
      image.png
  6. 仮想マシンを起動するとFedoraのインストーラーが立ち上がる特筆すべきことはないので割愛します
  7. 共有フォルダの設定
    1. フォルダーのパス:Windows(ホストOS)のQGISのソースやビルドされたQGISを置くフォルダを指定します
    2. フォルダー名:Fedora(ゲストOS)で表示されるフォルダ名
    3. 自動マウントにチェックします
    4. 共有フォルダでビルドを行わないこと、ファイルシステムが異なるため失敗します
      image.png
  8. VirtualBox Guest AdditionsのCDイメージを挿入します
  9. VirtualBox Guest AdditionsをFedora(ゲストOS)にインストールします
    1. cd /run/media/<User>/VBox_GAs_<version>/
    2. sudo autorun.sh
    3. 共有フォルダとクリップボードの共有が有効になります
  10. ここまででスナップショットを保存することを推奨します
    1. スナップショットとはゲストOSの復元ポイントを作成するVirtualBoxの機能です
    2. これ以降の手順で失敗してもロールバック可能になります
  11. 共有フォルダのユーザーグループを変更sudo usermod --append --groups vboxsf $USER
  12. Fedora(ゲストOS)を再起動します
  13. 共有フォルダーのQGISソースコードをゲストOSの~/以下の任意のディレクトリにコピーします
  14. Fedora(ゲストOS)で端末を開きます
    image.png
  15. cd ~/QGIS/ms-windows/mingw Fedora(ゲストOS)でコマンドを実行します
    1. ビルドするディレクトリに移動します
  16. sudo dnf -y update Fedora(ゲストOS)でコマンドを実行
    1. パッケージをアップデートします
  17. sudo sh mingwdeps.sh Fedora(ゲストOS)でコマンドを実行
    1. Fedora 39 WorkStationのビルドに必要なパッケージをインストールします
    2. パッケージの変更が必要なのでsudoで実行する必要があります

QGISのビルド(2回目以降はここから)

  1. cd ~/QGIS/ms-windows/mingw Fedora(ゲストOS)でコマンドを実行します

  2. build.shの以下のオプションをONからOFF

    1. QGIS公式ランディングページ関係のオプションなのでONからOFFにします
    -DWITH_SERVER=OFF 
    -DWITH_SERVER_LANDINGPAGE_WEBAPP=OFF
    
  3. sh build.sh x86_64 nodebug 4 Fedora(ゲストOS)でコマンドを実行します

    1. 4コアで64bitのリリースビルドが始まります
  4. tar cfzh qgis.tar.gz ~/QGIS/build_mingw64/* Fedora(ゲストOS)でコマンドを実行します

    1. シンボリックリンクを辿らせて圧縮します
  5. 共有フォルダにqgis.tar.gz をコピーします

  6. Windows(ホストOS)でqgis.tar.gz を解凍します

  7. build_mingw64\dist\usr\x86_64-w64-mingw32\sys-root\mingw\bin\qgis.exeをクリックするとQGISが起動可能になっています

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?