web-dev-qa-db-ja.com

Nodejsがモジュール '../build/Release/canvas'を見つけることができません

Cairoをインストールしましたが、 node-canvas です。すべて試しましたが、モジュールが見つかりません。

_Sudo apt-get install libcairo2-dev
Sudo npm install canvas
Sudo npm install canvas -g
_

require('canvas')を実行すると、次のエラーが発生します。

_Error: Cannot find module '../build/Release/canvas'
    at Function._resolveFilename (module.js:332:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:354:17)
    at require (module.js:370:17)
    at Object.<anonymous> (/home/tomas/node_modules/canvas/lib/bindings.js:2:18)
    at Module._compile (module.js:441:26)
    at Object..js (module.js:459:10)
    at Module.load (module.js:348:32)
    at Function._load (module.js:308:12)
    at Module.require (module.js:354:17)
_

Ubuntulinuxを使用しています

前もって感謝します。

19
friction

ここでの問題は次のようになります。1。ノードモジュールが別の場所にインストールされていますが、node.jsランタイムが別の場所でそれを検索しています。 NODE_PATHをチェックして、これが当てはまるかどうかを確認してください。

http://nodejs.org/api/modules.html#modules_loading_from_the_global_folders で説明されているモジュールの読み込みを参照してください

3
randomness

私も同じ問題を抱えていました。問題は、node-canvasinstallスクリプトが実行されなかったため、buildフォルダーが見つからなかったことです。

私の場合、何らかの理由でyarn.lockパッケージのインストールをスキップしたため、node-canvasファイルを削除することが解決策でした。 npmにパッケージの処理を任せると、node-canvasが正常にインストールされ、installスクリプトが実行され、ビルドフォルダーが再び表示されました。

1
Marcel Kalveram

私は同様の問題を抱えていましたが、canvasのドロップイン置換であるcanvas-prebuiltを使用し、これを行うために修正しました:npm install -g node-gypそしてnode- gyp再構築ターミナルで

0
Cris