Skip to content

cargo insstall 時にfailed to run custom build command for openssl-sys v0.9.xxとなる

Published:

wasm を試し作成しようとし、以下のコマンドを実行した。

cargo install wasm-pack

以下のようなエラーが主力された。

error: failed to run custom build command for `openssl-sys v0.9.77`

~ 中略 ~

  ******************************************************************************
  This perl implementation doesn't produce Windows like paths (with backward
  slash directory separators).  Please use an implementation that matches your
  building platform.

  This Perl version: 5.32.1 for x86_64-msys-thread-multi
  ******************************************************************************

原因は msys がインストールしている Perl を参照しているため、Windows における PATH の仕組み干渉しているもよう。解決策は以下の 3 つ。

  1. Openssl を Windows の Perl でビルドする。

  2. ビルドされた既存の wasm-pack を使用する。Docker 経由やググる等で入手可能。

  3. ビルドされた Openssl をインストールする。

\3. の手法を実施した。

ビルドされた Openssl を使い、wasm-pack をインストールする

Windows のパッケージ管理ソフトである vcpkg をインストールする。

git clone https://github.com/Microsoft/vcpkg.git
.\vcpkg\bootstrap-vcpkg.bat

インストールした vcpkg から openssl をインストールする。

vcpkg install openssl:x64-windows-static-md

環境変数をなんやかんや設定すると、wasm-pack のインストールに成功した。

set VCPKG_ROOT=c:\path\to\vcpkg\installation
set OPENSSL_NO_VENDOR=1
cargo install wasm-pack