Skip to content

Cannot compile with Node v23.11.0 on Ubuntu 24.04 #271

@Sourdface

Description

@Sourdface

I have installed the libs mentioned in the instructions and tried to install the last released version of npm but Gyp complains with the following error output:

wdnpm error code 1
npm error path /home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/mdns
npm error command failed
npm error command sh -c node-gyp rebuild
npm error make: Entering directory '/home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/mdns/build'
npm error   CXX(target) Release/obj.target/dns_sd_bindings/src/dns_sd.o
npm error   CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_browse.o
npm error   CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_enumerate_domains.o
npm error   CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_get_addr_info.o
npm error   CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_process_result.o
npm error   CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_ref.o
npm error make: Leaving directory '/home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/mdns/build'
npm error gyp info it worked if it ends with ok
npm error gyp info using node-gyp@11.1.0
npm error gyp info using node@23.11.0 | linux | x64
npm error gyp info find Python using Python version 3.12.3 found at "/usr/bin/python3"
npm error gyp info spawn /usr/bin/python3
npm error gyp info spawn args [
npm error gyp info spawn args '/home/sourdface/.nvm/versions/node/v23.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 '/home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/mdns/build/config.gypi',
npm error gyp info spawn args '-I',
npm error gyp info spawn args '/home/sourdface/.nvm/versions/node/v23.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 '/home/sourdface/.cache/node-gyp/23.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=/home/sourdface/.cache/node-gyp/23.11.0',
npm error gyp info spawn args '-Dnode_gyp_dir=/home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/npm/node_modules/node-gyp',
npm error gyp info spawn args '-Dnode_lib_file=/home/sourdface/.cache/node-gyp/23.11.0/<(target_arch)/node.lib',
npm error gyp info spawn args '-Dmodule_root_dir=/home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/mdns',
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 In file included from ../src/mdns.hpp:11,
npm error                  from ../src/dns_sd.cpp:1:
npm error /home/sourdface/.cache/node-gyp/23.11.0/include/node/node.h:1227:7: warning: cast between incompatible function types from ‘void (*)(v8::Local<v8::Object>)’ to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
npm error  1227 |       (node::addon_register_func) (regfunc),                          \
npm error       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm error /home/sourdface/.cache/node-gyp/23.11.0/include/node/node.h:1261:3: note: in expansion of macro ‘NODE_MODULE_X’
npm error  1261 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
npm error       |   ^~~~~~~~~~~~~
npm error ../src/dns_sd.cpp:322:1: note: in expansion of macro ‘NODE_MODULE’
npm error   322 | NODE_MODULE(dns_sd_bindings,node_mdns::init);
npm error       | ^~~~~~~~~~~
npm error ../src/dns_service_ref.cpp: In static member function ‘static void node_mdns::ServiceRef::Initialize(v8::Local<v8::Object>)’:
npm error ../src/dns_service_ref.cpp:35:21: error: invalid conversion from ‘Nan::NAN_PROPERTY_GETTER_RETURN_TYPE (*)(v8::Local<v8::String>, Nan::NAN_PROPERTY_GETTER_ARGS_TYPE)’ {aka ‘v8::Intercepted (*)(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)’} to ‘Nan::GetterCallback’ {aka ‘void (*)(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)’} [-fpermissive]
npm error    35 |     Nan::SetAccessor(t->InstanceTemplate(), Nan::New("fd").ToLocalChecked(), fd_getter);
npm error       |     ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                     |
npm error       |                     Nan::NAN_PROPERTY_GETTER_RETURN_TYPE (*)(v8::Local<v8::String>, Nan::NAN_PROPERTY_GETTER_ARGS_TYPE) {aka v8::Intercepted (*)(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)}
npm error In file included from ../src/mdns.hpp:12,
npm error                  from ../src/dns_service_ref.cpp:1:
npm error ../node_modules/nan/nan.h:2773:20: note:   initializing argument 3 of ‘void Nan::SetAccessor(v8::Local<v8::ObjectTemplate>, v8::Local<v8::String>, GetterCallback, SetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute)’
npm error  2773 |   , GetterCallback getter
npm error       |     ~~~~~~~~~~~~~~~^~~~~~
npm error ../src/dns_service_ref.cpp:36:21: error: invalid conversion from ‘Nan::NAN_PROPERTY_GETTER_RETURN_TYPE (*)(v8::Local<v8::String>, Nan::NAN_PROPERTY_GETTER_ARGS_TYPE)’ {aka ‘v8::Intercepted (*)(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)’} to ‘Nan::GetterCallback’ {aka ‘void (*)(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)’} [-fpermissive]
npm error    36 |     Nan::SetAccessor(t->InstanceTemplate(),  Nan::New("initialized").ToLocalChecked(), initialized_getter);
npm error       |     ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm error       |                     |
npm error       |                     Nan::NAN_PROPERTY_GETTER_RETURN_TYPE (*)(v8::Local<v8::String>, Nan::NAN_PROPERTY_GETTER_ARGS_TYPE) {aka v8::Intercepted (*)(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)}
npm error ../node_modules/nan/nan.h:2773:20: note:   initializing argument 3 of ‘void Nan::SetAccessor(v8::Local<v8::ObjectTemplate>, v8::Local<v8::String>, GetterCallback, SetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute)’
npm error  2773 |   , GetterCallback getter
npm error       |     ~~~~~~~~~~~~~~~^~~~~~
npm error ../src/dns_service_ref.cpp: In static member function ‘static Nan::NAN_PROPERTY_GETTER_RETURN_TYPE node_mdns::ServiceRef::fd_getter(v8::Local<v8::String>, Nan::NAN_PROPERTY_GETTER_ARGS_TYPE)’:
npm error ../src/dns_service_ref.cpp:110:35: error: void value not ignored as it ought to be
npm error   110 |             return Nan::ThrowError("DNSServiceRefSockFD() failed");
npm error       |                    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
npm error ../src/dns_service_ref.cpp: In static member function ‘static Nan::NAN_PROPERTY_GETTER_RETURN_TYPE node_mdns::ServiceRef::initialized_getter(v8::Local<v8::String>, Nan::NAN_PROPERTY_GETTER_ARGS_TYPE)’:
npm error ../src/dns_service_ref.cpp:120:1: warning: no return statement in function returning non-void [-Wreturn-type]
npm error   120 | }
npm error       | ^
npm error make: *** [dns_sd_bindings.target.mk:179: Release/obj.target/dns_sd_bindings/src/dns_service_ref.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> (/home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:216:23)
npm error gyp ERR! System Linux 6.8.0-101-generic
npm error gyp ERR! command "/home/sourdface/.nvm/versions/node/v23.11.0/bin/node" "/home/themu/.nvm/versions/node/v23.11.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
npm error gyp ERR! cwd /home/sourdface/.nvm/versions/node/v23.11.0/lib/node_modules/mdns
npm error gyp ERR! node -v v23.11.0
npm error gyp ERR! node-gyp -v v11.1.0
npm error gyp ERR! not ok
npm error A complete log of this run can be found in: /home/sourdface/.npm/_logs/2026-02-26T03_28_05_713Z-debug-0.log

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions