Node-ffi、ref、ref-array、ref-structインストール
2240 ワード
nodejs
/elctron
では、node-ffi、Foreign Function Interface
を介してダイナミックリンクライブラリ、通称調DLLを呼び出し、呼び出しC/C++コードを実現し、それによって多くのnodeが実現しにくい機能を実現したり、実現した多くの関数機能を多重化したりすることができる.node-ffi
Node-ffiは、純粋なJavaScriptを使用して動的ライブラリをロードおよび呼び出すためのNodeである.jsプラグイン.C++コードを記述せずにローカルDLLライブラリとのバインドを作成するために使用できます.JavaScriptとCにまたがるタイプ変換の処理も担当します.この方法は、
Node.js Addons
と比較して、以下の利点を有する.ノードとjs Addonsに比べて、この方法には次のような利点があります.
node
Node.js Addons
が参照する.node
を再コンパイルするたびにファイルロックを必要とせず、`electronアプリケーションのホット更新に迷惑をかける.欠点は次のとおりです.
インストール
node-ffi
はBuffer
クラスを通じてCコードとJSコードの間でメモリ共有を実現し、タイプ変換はref、ref-array、ref-structで実現した.node-ffi
/ref
はCネイティブコードを含むため、インストールにはNodeネイティブプラグインコンパイル環境を構成する必要がある.npm install ffi
npm install ref
npm install ref-array
npm install ref-struct
解決策
次は発生する可能性のある問題と解決方法です.
https://stackoverflow.com/questions/44316064/gyp-err-build-error-stack-error-make-failed-with-exit-code-2
https://stackoverflow.com/questions/32205721/npm-cannot-install-protractor-or-selenium-webdriver-gyp-err-build-error
私がここで出会った問題は
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack at ChildProcess.emit (events.js:110:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Linux 3.19.0-26-generic
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/node_modules/ws/node_modules/utf-8-validate
gyp ERR! node -v v0.12.4
gyp ERR! node-gyp -v v2.0.2
gyp ERR! not ok
解決策
$ npm cache clean
$ rm -rf node_modules
$ rm -rf ~/.node-gyp
現在のユーザーディレクトリの下を削除します.node-gypフォルダおよび.npmrcファイル