4 months ago
I am trying to deploy a react vite app. The build seems to fail with this error message:
npm error code 1
npm error path /app/node_modules/usb
npm error command failed
npm error command sh -c node-gyp-build
npm error make: Entering directory '/app/node_modules/usb/build'
npm error CC(target) Release/obj.target/libusb/libusb/libusb/core.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/descriptor.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/hotplug.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/io.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/strerror.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/sync.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/os/events_posix.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/os/threads_posix.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/os/linux_usbfs.o
npm error CC(target) Release/obj.target/libusb/libusb/libusb/os/linux_udev.o
npm error make: Leaving directory '/app/node_modules/usb/build'
npm error gyp info it worked if it ends with ok
npm error gyp info using node-gyp@10.2.0
npm error gyp info using node@22.11.0 | linux | x64
npm error gyp info find Python using Python version 3.12.7 found at "/root/.nix-profile/bin/python3"
npm error gyp http GET https://nodejs.org/download/release/v22.11.0/node-v22.11.0-headers.tar.gz
npm error gyp http 200 https://nodejs.org/download/release/v22.11.0/node-v22.11.0-headers.tar.gz
npm error gyp http GET https://nodejs.org/download/release/v22.11.0/SHASUMS256.txt
npm error gyp http 200 https://nodejs.org/download/release/v22.11.0/SHASUMS256.txt
npm error gyp info spawn /root/.nix-profile/bin/python3
npm error gyp info spawn args [
npm error gyp info spawn args '/nix/store/fkyp1bm5gll9adnfcj92snyym524mdrj-nodejs-22.11.0/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
npm error gyp info spawn args 'binding.gyp',
npm error gyp info spawn args '-f',
npm error gyp info spawn args 'make',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/app/node_modules/usb/build/config.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/nix/store/fkyp1bm5gll9adnfcj92snyym524mdrj-nodejs-22.11.0/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/root/.cache/node-gyp/22.11.0/include/node/common.gypi',
npm error gyp info spawn args '-Dlibrary=shared_library',
npm error gyp info spawn args '-Dvisibility=default',
npm error gyp info spawn args '-Dnode_root_dir=/root/.cache/node-gyp/22.11.0',
npm error gyp info spawn args '-Dnode_gyp_dir=/nix/store/fkyp1bm5gll9adnfcj92snyym524mdrj-nodejs-22.11.0/lib/node_modules/npm/node_modules/node-gyp',
npm error gyp info spawn args '-Dnode_lib_file=/root/.cache/node-gyp/22.11.0/<(target_arch)/node.lib',
npm error gyp info spawn args '-Dmodule_root_dir=/app/node_modules/usb',
npm error gyp info spawn args '-Dnode_engine=v8',
npm error gyp info spawn args '--depth=.',
npm error gyp info spawn args '--no-parallel',
npm error gyp info spawn args '--generator-output',
npm error gyp info spawn args 'build',
npm error gyp info spawn args '-Goutput_dir=.'
npm error gyp info spawn args ]
npm error gyp info spawn make
npm error gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm error ../libusb/libusb/os/linux_udev.c:28:10: fatal error: libudev.h: No such file or directory
npm error 28 | #include <libudev.h>
npm error | ^~~~~~~~~~~
npm error compilation terminated.
npm error make: *** [libusb.target.mk:151: Release/obj.target/libusb/libusb/libusb/os/linux_udev.o] Error 1
npm error gyp ERR! build error
npm error gyp ERR! stack Error: make
failed with exit code: 2
npm error gyp ERR! stack at ChildProcess.<anonymous> (/nix/store/fkyp1bm5gll9adnfcj92snyym524mdrj-nodejs-22.11.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:216:23)
npm error gyp ERR! System Linux 6.1.0-32-cloud-amd64
npm error gyp ERR! command "/nix/store/fkyp1bm5gll9adnfcj92snyym524mdrj-nodejs-22.11.0/bin/node" "/nix/store/fkyp1bm5gll9adnfcj92snyym524mdrj-nodejs-22.11.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
npm error gyp ERR! cwd /app/node_modules/usb
npm error gyp ERR! node -v v22.11.0
npm error gyp ERR! node-gyp -v v10.2.0
npm error gyp ERR! not ok
npm error A complete log of this run can be found in: /root/.npm/_logs/2025-04-14T08_52_16_732Z-debug-0.log
apparently the usb module is a dependency of a package used in the application, who runs and build without issues locally.
I did a bit of digging and i understand this seems to be a nix issue (which i know nothing about) and it seems i would need to use a nixpacks.toml file to resolve this dependency issue.... I tried some with the help of chat gpt but to no success.
I would really need some guidance and help because i'm really in the dark here
5 Replies
4 months ago
Hi there,
Please can you switch the builder from Nixpacks to Railpack?
Go to your service settings, go to the Build section and change your Builder to Railpack.
Status changed to Awaiting User Response Railway • 4 months ago
unicodeveloper
Hi there,Please can you switch the builder from Nixpacks to Railpack?Go to your service settings, go to the Build section and change your Builder to Railpack.
4 months ago
hello, i just did that and this is the new error :
Error: Cannot find module @rollup/rollup-linux-x64-gnu. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try npm i
again after removing both package-lock.json and node_modules directory.
at requireWithFriendlyError (/app/node_modules/rollup/dist/native.js:64:9)
at Object.<anonymous> (/app/node_modules/rollup/dist/native.js:73:76)
at Module._compile (node:internal/modules/cjs/loader:1554:14)
at Object..js (node:internal/modules/cjs/loader:1706:10)
at Module.load (node:internal/modules/cjs/loader:1289:32)
at Function._load (node:internal/modules/cjs/loader:1108:12)
at TracingChannel.traceSync (node:diagnostics_channel:322:14)
at wrapModuleLoad (node:internal/modules/cjs/loader:220:24)
at cjsLoader (node:internal/modules/esm/translators:262:5)
at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:196:7) {
[cause]: Error: Cannot find module '@rollup/rollup-linux-x64-gnu'
Require stack:
- /app/node_modules/rollup/dist/native.js
at Function._resolveFilename (node:internal/modules/cjs/loader:1225:15)
at Function._load (node:internal/modules/cjs/loader:1055:27)
at TracingChannel.traceSync (node:diagnostics_channel:322:14)
at wrapModuleLoad (node:internal/modules/cjs/loader:220:24)
at Module.require (node:internal/modules/cjs/loader:1311:12)
at require (node:internal/modules/helpers:136:16)
at requireWithFriendlyError (/app/node_modules/rollup/dist/native.js:46:10)
at Object.<anonymous> (/app/node_modules/rollup/dist/native.js:73:76)
at Module._compile (node:internal/modules/cjs/loader:1554:14)
at Object..js (node:internal/modules/cjs/loader:1706:10) {
code: 'MODULE_NOT_FOUND',
requireStack: [ '/app/node_modules/rollup/dist/native.js' ]
}
}
Node.js v22.14.0
i'm going to do what they suggest? npm i after removing files.
Status changed to Awaiting Railway Response Railway • 4 months ago
4 months ago
Yes please
Status changed to Awaiting User Response Railway • 4 months ago
4 months ago
so i did, and it seems to deploy now? i don't know what you did becaause i think i tried this before.
However, when serving the application through http and opening the browser i get a black screen with a console error:
SES_UNCAUGHT_EXCEPTION: ReferenceError: Buffer is not defined
here : https://aquaadsfrontend-production.up.railway.app/
Status changed to Awaiting Railway Response Railway • 4 months ago
Status changed to Awaiting User Response Railway • 4 months ago