nodejs中的serialport編譯


最近在研究在i.mx6ul中使用node-red。

基於 cortex-a7的低功耗,是選擇nxp 的i.mx6ul的主要原因。但是沒想到,在這個芯片上並不像其他各種pi的板載資源充足。最重要的一點是yocto定制的系統,過於精簡,導致nodejs無法運行。

就算是重新編譯nodejs,去掉動態依賴,但是其他模塊也面臨着同樣的問題。

當然了,用ubuntu-base替換rootfs是個不錯的方法。

不過在安裝node-red-contrib-modbus卻是怎么都無法完成。各種排錯和嘗試,真的是崩潰了。

問題的重點是在安裝過程中,需要安裝serialport這個模塊,總是編譯失敗。

> serialport@6.2.2 install /usr/local/lib/node_modules/node-red-contrib-modbus/node_modules/modbus-serial/node_modules/serialport
> prebuild-install || node-gyp rebuild

prebuild-install WARN install No prebuilt binaries found (target=10.14.1 runtime=node arch=arm platform=linux)
gyp ERR! build error
gyp ERR! stack Error: not found: make
gyp ERR! stack at getNotFoundError (/usr/local/lib/node_modules/npm/node_modules/which/which.js:13:12)
gyp ERR! stack at F (/usr/local/lib/node_modules/npm/node_modules/which/which.js:68:19)
gyp ERR! stack at E (/usr/local/lib/node_modules/npm/node_modules/which/which.js:80:29)
gyp ERR! stack at /usr/local/lib/node_modules/npm/node_modules/which/which.js:89:16
gyp ERR! stack at /usr/local/lib/node_modules/npm/node_modules/isexe/index.js:42:5
gyp ERR! stack at /usr/local/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:154:21)
gyp ERR! System Linux 3.14.38-6UL_ga-00004-gc2cfa49
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/node-red-contrib-modbus/node_modules/modbus-serial/node_modules/serialport
gyp ERR! node -v v10.14.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: @serialport/bindings@2.0.3 (node_modules/node-red-contrib-modbus/node_modules/@serialport/bindings):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: @serialport/bindings@2.0.3 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! serialport@6.2.2 install: `prebuild-install || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the serialport@6.2.2 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-12-06T07_40_04_541Z-debug.log

看到這里,說明你是需要答案的。不做解釋了,辦法就是

npm --registry https://registry.npm.taobao.org install -g --unsafe-perm node-red-contrib-modbus

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM