Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9034

npm_config_arch, npm_config_target_arch, そして npm_config_* 環境変数について

$
0
0
npm_config_ で始まる環境変数は npm コマンドによって解釈される。 npm_config_foo=bar とセットすると npm のコンフィグ foo を bar にセットしたのと同じ意味になる。 https://docs.npmjs.com/cli/v7/using-npm/config#environment-variables この環境変数の名前は大文字でも小文字でもいいが、 npm は scripts を実行するとき名前が小文字バージョンの環境変数を独自にセットする。それは(ユーザーによってセットされた)名前が大文字の環境変数よりも優先されることに注意。ユーザーによって名前が小文字の環境変数がセットされたらそれが最優先される。 npm_config_ で始まる環境変数は npm コマンド以外にも認識されることがある。中でも Node のネイティブ拡張を扱うライブラリ node-gyp と node-pre-gyp に関する環境変数は覚えておくといい。 タイトルにも書いた npm_config_arch は node-gyp がビルドするネイティブ拡張のアーキテクチャを指定する。 npm_config_target_arch は node-pre-gyp がダウンロードするコンパイル済みネイティブ拡張バイナリのアーキテクチャを指定する。 M1 Mac では node-pre-gyp がネイティブ拡張をダウンロードできずにエラーを出すことがときどきある。その場合は export npm_config_target_arch=x64 してから npm install <pkg> を実行するといい。 yarn や pnpm でも node-gyp や node-pre-gyp が認識する環境変数は使える。 関連記事:

Viewing all articles
Browse latest Browse all 9034

Trending Articles