Я запускаю raspbian на моем pi, и когда я запускаю "npm rebuild", чтобы мои установленные на узле npm пакеты красного узла появлялись на моем узле красного интерфейса. Когда я запускаю «npm rebuild», он переходит в бесконечный make-файл, чтобы попытаться собрать его из исходного кода (или, по крайней мере, он длился более часа без видимого прогресса):
sqlite3@4.0.9 install /home/pi/.node-red/node_modules/sqlite3
node-pre-gyp install --fallback-to-build
node-pre-gyp WARN Using request for node-pre-gyp https download
node-pre-gyp WARN Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.0.9/node-v57-linux-arm.tar.gz
node-pre-gyp WARN Pre-built binaries not found for sqlite3@4.0.9 and node@8.11.4 (node-v57 ABI, glibc) (falling back to source compile with node-gyp)
make: Entering directory '/home/pi/.node-red/node_modules/sqlite3/build'
ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep
Release/obj/gen/sqlite-autoconf-3280000/sqlite3.c
TOUCH Release/obj.target/deps/action_before_build.stamp
CC(target) Release/obj.target/sqlite3/gen/sqlite-autoconf-3280000/sqlite3.o
^Cdeps/sqlite3.target.mk:123: recipe for target
'Release/obj.target/sqlite3/gen/sqlite-autoconf-3280000/sqlite3.o' failed
make: *** [Release/obj.target/sqlite3/gen/sqlite-autoconf-3280000/sqlite3.o] Interrupt
Короче говоря, я не могу использовать contrib-узлы, потому что sqlite не загружается - и это идеальное решение для моей проблемы.
Когда я запускаю "sudo npm rebuild", я сталкиваюсь с ошибками:
sqlite3@4.0.9 install /home/pi/.node-red/node_modules/sqlite3
node-pre-gyp install --fallback-to-build
node-pre-gyp WARN Using request for node-pre-gyp https download
node-pre-gyp WARN Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.0.9/node-v72-linux-arm.tar.gz
node-pre-gyp WARN Pre-built binaries not found for sqlite3@4.0.9 and node@12.4.0 (node-v72 ABI, glibc) (falling back to source compile with node-gyp)
gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/12.4.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/home/pi/.node-red/node_modules/sqlite3/.node-gyp"
make: Entering directory '/home/pi/.node-red/node_modules/sqlite3/build'
make: *** No rule to make target '../.node-gyp/12.4.0/include/node/common.gypi', needed by 'Makefile'. Stop.
make: Leaving directory '/home/pi/.node-red/node_modules/sqlite3/build'
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:262:23)
gyp ERR! stack at ChildProcess.emit (events.js:200:13)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.19.42-v7+
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js"
"build" "--fallback-to-build" "--module=/home/pi/.node-
red/node_modules/sqlite3/lib/binding/node-v72-linux-arm/node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=/home/pi/.node-red/node_modules/sqlite3/lib/binding/node-v72-linux-arm" "--napi_version=4" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v72"
gyp ERR! cwd /home/pi/.node-red/node_modules/sqlite3
gyp ERR! node -v v12.4.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
build --fallback-to-build --module=/home/pi/.node-red/node_modules/sqlite3/lib/binding/node-v72-linux-arm/node_sqlite3.node --module_name=node_sqlite3 --module_path=/home/pi/.node-red/node_modules/sqlite3/lib/binding/node-v72-linux-arm --napi_version=4 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72' (1)
node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/home/pi/.node-red/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp ERR! stack at ChildProcess.emit (events.js:200:13)
node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:1021:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)
node-pre-gyp ERR! System Linux 4.19.42-v7+
node-pre-gyp ERR! command "/usr/local/bin/node" "/home/pi/.node-red/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /home/pi/.node-red/node_modules/sqlite3
node-pre-gyp ERR! node -v v12.4.0
node-pre-gyp ERR! node-pre-gyp -v v0.11.0
node-pre-gyp ERR! not ok
Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/pi/.node-red/node_modules/sqlite3/lib/binding/node-v72-linux-arm/node_sqlite3.node --module_name=node_sqlite3 --module_path=/home/pi/.node-red/node_modules/sqlite3/lib/binding/node-v72-linux-arm --napi_version=4 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72' (1)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! sqlite3@4.0.9 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the sqlite3@4.0.9 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/2019-06-15T23_16_13_885Z-debug.log
Если это поможет, я добавлю журнал отладки в следующий комментарий.
Я пытался следовать совету здесь:
bcrypt@1.0.3 install: `node-pre-gyp install --fallback-to-build`
и здесь:
Ошибка с npm-gyp при перестроении npm
В обоих случаях это означало следование всем советам, включая поиск правильной версии Python и попытку направить команды через платформы Python (пытаясь запустить npm в Python)
А также вход в aws для того, чтобы попробовать и скачать двоичные файлы сборки
4.0.9, я также использовал nvm для установки узла v10.16.0, v8.16.0 и
v12.4.0 и запустили «npm rebuild» на всех трех платформах до
идентичный вывод
Я ожидаю, что "npm rebuild" позволит мне использовать узел sql, и
узел телеграмбов, так что я могу получить некоторые основные потоки, проходящие через него для моего
демо подходит.