openplotter-settings icon indicating copy to clipboard operation
openplotter-settings copied to clipboard

Could not locate bindings file

Open cybardev opened this issue 2 years ago • 4 comments

Not sure how to proceed, so any input would be greatly appreciated. Thank you very much.


Actions Performed

  • connected USB GPS module to Raspberry Pi running OpenPlotter latest with everything updated
  • Added connection to Signal K via Serial app
  • Opened Signal K admin dashboard on Chromium

Expected Result

  • GPS shows up under "Connection activity (deltas/second)"

Actual Result

  • Error logged under "Connection and Plugin Status" and "Signal K > Server > Server Log"
  • Error message: (click to see) Error: Could not locate the bindings file. Tried: → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/Debug/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/Release/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/out/Debug/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/Debug/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/out/Release/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/Release/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/default/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/compiled/16.20.0/linux/arm64/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node → /usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/lib/binding/node-v93-linux-arm64/bindings.node at bindings (/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:126:9) at Object. (/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/lib/linux.js:2:36) at Module._compile (node:internal/modules/cjs/loader:1196:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1250:10) at Module.load (node:internal/modules/cjs/loader:1074:32) at Function.Module._load (node:internal/modules/cjs/loader:909:12) at Module.require (node:internal/modules/cjs/loader:1098:19) at require (node:internal/modules/cjs/helpers:108:18) at Object. (/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/lib/index.js:14:22) at Module._compile (node:internal/modules/cjs/loader:1196:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1250:10) at Module.load (node:internal/modules/cjs/loader:1074:32) at Function.Module._load (node:internal/modules/cjs/loader:909:12) at Module.require (node:internal/modules/cjs/loader:1098:19) at require (node:internal/modules/cjs/helpers:108:18) at Object. (/usr/lib/node_modules/signalk-server/node_modules/serialport/lib/index.js:2:17) { tries: [ '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/Debug/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/Release/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/out/Debug/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/Debug/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/out/Release/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/Release/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/build/default/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/compiled/16.20.0/linux/arm64/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node', '/usr/lib/node_modules/signalk-server/node_modules/@serialport/bindings/lib/binding/node-v93-linux-arm64/bindings.node' ] }

Potential Solution Found

Problems

  • "last version" means which of the following?
    • latest version by building from git
    • version prior to the latest version by building from git
  • if there's a simpler way than building from git, not sure if it's possible in GUI, and not sure of commands to run
  • wondering if I should reinstall and not update, if the update is causing the issues

cybardev avatar May 04 '23 14:05 cybardev

It seems that you have a corrupted installation of the signal k server. Try reinstalling the signal k server from the openplotter-signalk-installer app. If that does not work try uninstalling the openplotter-signalk-installer from openplotter-settings and installing again.

sailoog avatar May 05 '23 08:05 sailoog

I'm trying this on a Pi 3B and while doing either of reinstalling Signal K server, or reinstalling the Signal K Installer app from OpenPlotter Settings, the system slows down until it completely freezes while performing the following command:

npm info run [email protected] install node_modules/signalk-server/node_modules/socketcan node-gyp rebuild

I have also tried making the GPS work on a fresh install on a different SD card without updating anything after the installation, and that seems to work perfectly fine.


PS: I forgot to mention before but I'm using OpenPlotter 64-bit version, not the 32-bit version, in case that matters.

cybardev avatar May 05 '23 12:05 cybardev

The "rebuild" processes take a long time, seem to freeze but it is working.

sailoog avatar May 10 '23 08:05 sailoog

@sailoog

The "rebuild" processes take a long time, seem to freeze but it is working.

Is there a way to build it on another (more powerful) machine and install it to the Pi, or would that be more work than it's worth?

cybardev avatar May 10 '23 13:05 cybardev