Unable to compile Rust hello world on Windows: linker lin…

スポンサーリンク

WindowsでRustのHello Worldをコンパイルできない: linker link.exe not found

エラーの概要・症状

Rustを使用して「Hello World」プログラムをコンパイルしようとしたときに、次のエラーメッセージが表示されることがあります。

Unable to compile Rust hello world on Windows: linker link.exe not found

このエラーは、Rustのコンパイラが必要なリンカであるlink.exeを見つけられないことを示しています。この問題が発生すると、プログラムを正常にビルドできません。

このエラーが発生する原因

このエラーが発生する主な原因は、以下の通りです。

  1. C++ビルドツールが未インストール: RustはC++ビルドツールを必要とします。これがインストールされていない場合、link.exeが見つからず、エラーが発生します。
  2. Rustのツールチェーンの設定ミス: Rustのツールチェーン(コンパイラやリンカなど)の設定が正しくないと、正しいリンカを見つけられません。
  3. 環境変数の設定不足: 環境変数が正しく設定されていないと、Rustが必要なツールを見つけることができない場合があります。

解決方法

このエラーを解決するための方法をいくつか紹介します。

解決方法 1: C++ビルドツールのインストール

  1. Visual Studioのビルドツールをダウンロードします。以下のリンクからアクセスできます。
  2. Visual Studio Build Tools
  3. ダウンロードしたインストーラーを実行し、「C++によるデスクトップ開発」にチェックを入れてインストールします。
  4. インストール後、以下のコマンドを実行してRustのツールチェーンを設定します。
    bash
    rustup toolchain install stable-x86_64-pc-windows-gnu
    rustup default stable-x86_64-pc-windows-gnu
  5. 最後に、プログラムをビルドします。
    bash
    cargo build

解決方法 2: Rustツールチェーンの再インストール

  1. もし先程の手順で解決しない場合、次のコマンドを実行して現在のツールチェーンをアンインストールします。
    bash
    rustup uninstall toolchain stable-x86_64-pc-windows-msvc
  2. 次に、新たにツールチェーンをインストールします。
    bash
    rustup toolchain install stable-x86_64-pc-windows-gnu
    rustup default stable-x86_64-pc-windows-gnu
  3. 最後に、プログラムをビルドするために以下のコマンドを実行します。
    bash
    cargo build

解決方法 3: 環境変数の確認

  1. link.exeが正しくインストールされているか確認します。通常、これはVisual Studioのインストールディレクトリ内に存在します。
  2. 環境変数にlink.exeのパスが含まれているか確認します。以下の手順を行います。
  3. 「スタート」メニューから「システム」を開き、「システムの詳細設定」を選択します。
  4. 「環境変数」ボタンをクリックし、Pathを探します。
  5. link.exeのパス(例: C:\Program Files (x86)\Microsoft Visual Studio\<version>\BuildTools\VC\Tools\MSVC\<version>\bin\Hostx64\x64)が含まれていなければ、追加します。
  6. 環境変数を変更した後、コマンドプロンプトを再起動し、プログラムをビルドします。

エラーの予防方法

  • Visual Studioのビルドツールをインストールした後は、常に最新の状態にアップデートするように心掛けましょう。
  • Rustのツールチェーンを定期的にアップデートして、最新の機能とバグ修正を利用しましょう。コマンドは以下の通りです。
    bash
    rustup update

まとめ

「Unable to compile Rust hello world on Windows: linker link.exe not found」というエラーメッセージは、主にC++ビルドツールが未インストールであるか、Rustのツールチェーンが正しく設定されていないことが原因です。上記の解決方法を試すことで、問題を解決し、Rustのプログラムを正常にビルドできるようになります。正しい環境を整えることで、今後のエラーを未然に防ぐことが可能です。

コメント

タイトルとURLをコピーしました