Skip to content

Instantly share code, notes, and snippets.

@Hamayama
Last active August 17, 2025 05:35
Show Gist options
  • Select an option

  • Save Hamayama/c9aa3a51d84e45bf6875ef6ee4558484 to your computer and use it in GitHub Desktop.

Select an option

Save Hamayama/c9aa3a51d84e45bf6875ef6ee4558484 to your computer and use it in GitHub Desktop.
Gauche の Windows 上でのコンパイル手順 メモ (UCRT64 版)

Gauche の Windows 上でのコンパイル手順 メモ (UCRT64 版)

  • 自分がコンパイルしたとき (2025年8月) の参考用のメモです。
    (情報が古くなっている可能性があります)
    Windows 11 24H2 (64bit) で作業しました。

  • 以下の記述は、MSYS2/MinGW-w64 UCRT64 (64bit) の開発環境でのコンパイル手順となっています。

  • UCRT (ユニバーサル C ランタイム) は、マイクロソフトの新しい C ランタイムライブラリです。
    MSYS2/MinGW-w64 UCRT64 (64bit) は、この UCRT を利用するバイナリを作成します。
    UCRT は、Windows 10 以後ではデフォルトで入っていますが、
    それより古い Windows では、インストールが必要のようです。(詳細未確認)
    これまでの MSVCRT との違いは、
    https://www.msys2.org/docs/environments/
    の「MSVCRT vs UCRT」に記載されています。

  1. Gauche のインストール
    事前に Gauche がインストールされている必要があります。
    以下のページに Windows用バイナリインストーラ があるので、インストールを実施ください。
    http://practical-scheme.net/gauche/download-j.html
    (すでにインストール済みであれば本手順は不要です)

    <<<コンパイルに使う Gauche のバージョンについて>>>
    開発最新版の Gauche をコンパイルするには、動作する Gauche が必要になります。
    このコンパイルに使用する Gauche は、基本的に最新リリース版であることが想定されているとのことです。
    このため、最新リリース版 (現時点では v0.9.15) の Gauche のフォルダを丸ごととっておいて、
    コンパイル時だけは、環境変数 PATH を書き換えてそちらを指すようにするのが 安全なようです。

  2. MSYS2/MinGW-w64 UCRT64 (64bit) のインストール
    事前に MSYS2/MinGW-w64 UCRT64 (64bit) がインストールされている必要があります。
    以下のページを参考に、開発環境のインストールを実施ください。
    https://gist.github.com/Hamayama/7810d2a1a59a872a2fbc271345151f77
    (すでにインストール済みであれば本手順は不要です)

  3. Gauche のソースのダウンロードと展開
    Gauche の GitHub のページ
    https://github.com/shirok/Gauche
    から、[Code] - [Download Zip] ボタン等で開発最新版のソースをダウンロードします。
    そして適当な作業用フォルダ ( c:\work 等 ) に展開します。
    (注意) 作業用フォルダのパスには、空白を入れないようにしてください。

  4. Gauche のコンパイル
    <MSYS2/MinGW-w64 UCRT64 (64bit) 環境>
    プログラムメニューから MSYS2 の UCRT64 Shell を起動して、以下のコマンドを実行してください。
    ( c:\work にソースを展開した場合)

    cd /c/work/Gauche
    ./DIST gen
    src/mingw-dist.sh
    

    ( mingw-dist.sh には、いろいろなオプションを指定できます。
    src/mingw-dist.sh --help で確認できます)

  5. テストの実行
    <MSYS2/MinGW-w64 UCRT64 (64bit) 環境>
    プログラムメニューから MSYS2 の UCRT64 Shell を起動して、以下のコマンドを実行してください。
    ( c:\work にソースを展開した場合)

    cd /c/work/Gauche
    make check
    

    結果は、
    Total: 36455 tests, 36455 passed, 0 failed, 0 aborted.
    のように表示されます。
    結果をファイルにも残したい場合は、上記の2行目を、

    make check 2>&1 | tee test_result.txt
    

    のように変更します。
    ( c:\work\Gauche に test_result.txt というファイルが作られます)

  6. 生成したファイルのコピー
    生成した
    c:\work\Gauche-mingw-dist\Gauche-(アーキテクチャ名)
    の中身を、すべて、
    c:\Program Files\Gauche
    に上書きコピーします。
    (念のため上書き前のフォルダのバックアップを取ってから作業してください)

  7. バージョンの確認
    コマンドプロンプトを開いて以下を実行し、バージョンを確認します。

    gosh -V  
    

(2025-8-17)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment