GithubHelp home page GithubHelp logo

Global installs fail about docker-node HOT 14 CLOSED

nodejs avatar nodejs commented on May 17, 2024
Global installs fail

from docker-node.

Comments (14)

goloroden avatar goloroden commented on May 17, 2024 1

I found out that using

# export USER=root && npm install -g pm2-web

at least sets the user to root instead of undefined. Nevertheless, the error is still there.

from docker-node.

eschwartz avatar eschwartz commented on May 17, 2024 1

I've had this same issue trying to install npm packages which rely on node-gyp, from inside a docker container. Specifically, I haven't been able to install node-sharp or node-mbtiles.

Here's what I did to fix it (from inside my container):

$ export USER=root
$ export HOME=/tmp
$ sudo npm install mbtiles

I was surprised to have to use sudo, but without it I got the following error:

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/build'
gyp ERR! stack     at Error (native)
gyp ERR! System Linux 4.0.9-boot2docker
gyp ERR! command "/opt/nodejs/node-v4.2.2-linux-x64/bin/node" "/opt/nodejs/node-v4.2.2-linux-x64/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "--fallback-to-build" "--module=/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64/node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64"
gyp ERR! cwd /opt/map-api/node_modules/mbtiles/node_modules/sqlite3
gyp ERR! node -v v4.2.2
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok 
node-pre-gyp ERR! build error 
node-pre-gyp ERR! stack Error: Failed to execute '/opt/nodejs/node-v4.2.2-linux-x64/bin/node /opt/nodejs/node-v4.2.2-linux-x64/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64' (1)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp ERR! stack     at emitTwo (events.js:87:13)
node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:818:16)
node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
node-pre-gyp ERR! System Linux 4.0.9-boot2docker
node-pre-gyp ERR! command "/opt/nodejs/node-v4.2.2-linux-x64/bin/node" "/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /opt/map-api/node_modules/mbtiles/node_modules/sqlite3
node-pre-gyp ERR! node -v v4.2.2
node-pre-gyp ERR! node-pre-gyp -v v0.6.14
node-pre-gyp ERR! not ok 
Failed to execute '/opt/nodejs/node-v4.2.2-linux-x64/bin/node /opt/nodejs/node-v4.2.2-linux-x64/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/opt/map-api/node_modules/mbtiles/node_modules/sqlite3/lib/binding/node-v46-linux-x64' (1)
npm ERR! Linux 4.0.9-boot2docker
npm ERR! argv "/opt/nodejs/node-v4.2.2-linux-x64/bin/node" "/usr/local/bin/npm" "install" "mbtiles"
npm ERR! node v4.2.2
npm ERR! npm  v2.14.7
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! This is most likely a problem with the sqlite3 package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-pre-gyp install --fallback-to-build
npm ERR! You can get their info via:
npm ERR!     npm owner ls sqlite3
npm ERR! There is likely additional logging output above.

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

I believe that's a node-gyp/npm thing:

nodejs/node-gyp#454
nodejs/node-gyp#115 (comment)

You'll see a similar warning if you e.g install on a mac. On my mac (sudo npm install -g pm2-web) I get:

...
gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/christopher/.node-gyp/0.10.36"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/pm2-web/node_modules/mdns2/.node-gyp"
...

Also, I'm pretty sure the install will succeed since it's a warning and not an actual error. Did pm2-web actually install for you?

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

I tried this myself in a Docker container and the install does fail. Looks like something to do with the mdsn2 module

npm WARN optional dep failed, continuing [email protected]

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

Here's the full error I get

make: Entering directory '/usr/local/lib/node_modules/pm2-web/node_modules/mdns2/build'
  CXX(target) Release/obj.target/dns_sd_bindings/src/dns_sd.o
In file included from ../src/dns_sd.cpp:1:0:
../src/mdns.hpp:31:20: fatal error: dns_sd.h: No such file or directory
 #include <dns_sd.h>
                    ^
compilation terminated.
dns_sd_bindings.target.mk:132: recipe for target 'Release/obj.target/dns_sd_bindings/src/dns_sd.o' failed
make: *** [Release/obj.target/dns_sd_bindings/src/dns_sd.o] Error 1
make: Leaving directory '/usr/local/lib/node_modules/pm2-web/node_modules/mdns2/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:267:23)
gyp ERR! stack     at ChildProcess.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:820:12)
gyp ERR! System Linux 3.13.0-36-generic
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/pm2-web/node_modules/mdns2
gyp ERR! node -v v0.10.36
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok 
npm WARN optional dep failed, continuing [email protected]

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

Further update: The install doesn't fail entirely, just the installation of the mdns2 dependency fails:

npm WARN optional dep failed, continuing [email protected]"

Looking up that error I found achingbrain/pm2-web#31

mdns requires you have libavahi-compat-libdnssd-dev installed

So, after I installed it:

apt-get update && apt-get install libavahi-compat-libdnssd-dev

I tied again (I'm not a fan of the npm spinner ;):

 export npm_config_loglevel=http; export npm_config_spin=false && npm install -g pm2-web

And it works!

Looks like you just need that missing package and you're all good.

from docker-node.

md5 avatar md5 commented on May 17, 2024

@chorrell It looks like that doesn't work on node:0.12:

$ docker run --rm node:0.12 sh -c 'apt-get update && apt-get install -y libavahi-compat-libdnssd-dev && npm install -g mdns2'
Get:1 http://security.debian.org jessie/updates InRelease [84.1 kB]
Get:2 http://http.debian.net jessie InRelease [199 kB]
Get:3 http://http.debian.net jessie-updates InRelease [117 kB]
Get:4 http://security.debian.org jessie/updates/main amd64 Packages [20 B]
Get:5 http://http.debian.net jessie/main amd64 Packages [9051 kB]
Get:6 http://http.debian.net jessie-updates/main amd64 Packages [20 B]
Fetched 9451 kB in 11s (806 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  avahi-daemon bind9-host geoip-database init-system-helpers
  libavahi-client-dev libavahi-common-dev libavahi-compat-libdnssd1
  libavahi-core7 libbind9-90 libdaemon0 libdbus-1-dev libdns100 libgeoip1
  libisc95 libisccc90 libisccfg90 liblwres90 libnss-mdns
Suggested packages:
  avahi-autoipd geoip-bin
The following NEW packages will be installed:
  avahi-daemon bind9-host geoip-database init-system-helpers
  libavahi-client-dev libavahi-common-dev libavahi-compat-libdnssd-dev
  libavahi-compat-libdnssd1 libavahi-core7 libbind9-90 libdaemon0
  libdbus-1-dev libdns100 libgeoip1 libisc95 libisccc90 libisccfg90 liblwres90
  libnss-mdns
0 upgraded, 19 newly installed, 0 to remove and 49 not upgraded.
Need to get 3345 kB of archives.
After this operation, 10.6 MB of additional disk space will be used.
Get:1 http://http.debian.net/debian/ jessie/main libavahi-compat-libdnssd1 amd64 0.6.31-4+b2 [45.3 kB]
Get:2 http://http.debian.net/debian/ jessie/main libavahi-core7 amd64 0.6.31-4+b2 [112 kB]
Get:3 http://http.debian.net/debian/ jessie/main libdaemon0 amd64 0.14-6 [17.5 kB]
Get:4 http://http.debian.net/debian/ jessie/main libgeoip1 amd64 1.6.2-4 [90.8 kB]
Get:5 http://http.debian.net/debian/ jessie/main init-system-helpers all 1.22 [14.0 kB]
Get:6 http://http.debian.net/debian/ jessie/main libisc95 amd64 1:9.9.5.dfsg-8 [168 kB]
Get:7 http://http.debian.net/debian/ jessie/main libdns100 amd64 1:9.9.5.dfsg-8 [679 kB]
Get:8 http://http.debian.net/debian/ jessie/main libisccc90 amd64 1:9.9.5.dfsg-8 [35.6 kB]
Get:9 http://http.debian.net/debian/ jessie/main libisccfg90 amd64 1:9.9.5.dfsg-8 [56.2 kB]
Get:10 http://http.debian.net/debian/ jessie/main libbind9-90 amd64 1:9.9.5.dfsg-8 [42.4 kB]
Get:11 http://http.debian.net/debian/ jessie/main liblwres90 amd64 1:9.9.5.dfsg-8 [52.1 kB]
Get:12 http://http.debian.net/debian/ jessie/main bind9-host amd64 1:9.9.5.dfsg-8 [66.7 kB]
Get:13 http://http.debian.net/debian/ jessie/main avahi-daemon amd64 0.6.31-4+b2 [87.4 kB]
Get:14 http://http.debian.net/debian/ jessie/main libnss-mdns amd64 0.10-6 [24.0 kB]
Get:15 http://http.debian.net/debian/ jessie/main geoip-database all 20141027-2 [1463 kB]
Get:16 http://http.debian.net/debian/ jessie/main libavahi-common-dev amd64 0.6.31-4+b2 [65.2 kB]
Get:17 http://http.debian.net/debian/ jessie/main libdbus-1-dev amd64 1.8.12-3 [206 kB]
Get:18 http://http.debian.net/debian/ jessie/main libavahi-client-dev amd64 0.6.31-4+b2 [59.2 kB]
Get:19 http://http.debian.net/debian/ jessie/main libavahi-compat-libdnssd-dev amd64 0.6.31-4+b2 [60.1 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 3345 kB in 8s (395 kB/s)
Selecting previously unselected package libavahi-compat-libdnssd1:amd64.
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 27867 files and directories currently installed.)
Preparing to unpack .../libavahi-compat-libdnssd1_0.6.31-4+b2_amd64.deb ...
Unpacking libavahi-compat-libdnssd1:amd64 (0.6.31-4+b2) ...
Selecting previously unselected package libavahi-core7:amd64.
Preparing to unpack .../libavahi-core7_0.6.31-4+b2_amd64.deb ...
Unpacking libavahi-core7:amd64 (0.6.31-4+b2) ...
Selecting previously unselected package libdaemon0:amd64.
Preparing to unpack .../libdaemon0_0.14-6_amd64.deb ...
Unpacking libdaemon0:amd64 (0.14-6) ...
Selecting previously unselected package libgeoip1:amd64.
Preparing to unpack .../libgeoip1_1.6.2-4_amd64.deb ...
Unpacking libgeoip1:amd64 (1.6.2-4) ...
Selecting previously unselected package init-system-helpers.
Preparing to unpack .../init-system-helpers_1.22_all.deb ...
Unpacking init-system-helpers (1.22) ...
Selecting previously unselected package libisc95.
Preparing to unpack .../libisc95_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking libisc95 (1:9.9.5.dfsg-8) ...
Selecting previously unselected package libdns100.
Preparing to unpack .../libdns100_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking libdns100 (1:9.9.5.dfsg-8) ...
Selecting previously unselected package libisccc90.
Preparing to unpack .../libisccc90_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking libisccc90 (1:9.9.5.dfsg-8) ...
Selecting previously unselected package libisccfg90.
Preparing to unpack .../libisccfg90_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking libisccfg90 (1:9.9.5.dfsg-8) ...
Selecting previously unselected package libbind9-90.
Preparing to unpack .../libbind9-90_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking libbind9-90 (1:9.9.5.dfsg-8) ...
Selecting previously unselected package liblwres90.
Preparing to unpack .../liblwres90_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking liblwres90 (1:9.9.5.dfsg-8) ...
Selecting previously unselected package bind9-host.
Preparing to unpack .../bind9-host_1%3a9.9.5.dfsg-8_amd64.deb ...
Unpacking bind9-host (1:9.9.5.dfsg-8) ...
Selecting previously unselected package avahi-daemon.
Preparing to unpack .../avahi-daemon_0.6.31-4+b2_amd64.deb ...
Unpacking avahi-daemon (0.6.31-4+b2) ...
Selecting previously unselected package libnss-mdns:amd64.
Preparing to unpack .../libnss-mdns_0.10-6_amd64.deb ...
Unpacking libnss-mdns:amd64 (0.10-6) ...
Selecting previously unselected package geoip-database.
Preparing to unpack .../geoip-database_20141027-2_all.deb ...
Unpacking geoip-database (20141027-2) ...
Selecting previously unselected package libavahi-common-dev.
Preparing to unpack .../libavahi-common-dev_0.6.31-4+b2_amd64.deb ...
Unpacking libavahi-common-dev (0.6.31-4+b2) ...
Selecting previously unselected package libdbus-1-dev:amd64.
Preparing to unpack .../libdbus-1-dev_1.8.12-3_amd64.deb ...
Unpacking libdbus-1-dev:amd64 (1.8.12-3) ...
Selecting previously unselected package libavahi-client-dev.
Preparing to unpack .../libavahi-client-dev_0.6.31-4+b2_amd64.deb ...
Unpacking libavahi-client-dev (0.6.31-4+b2) ...
Selecting previously unselected package libavahi-compat-libdnssd-dev.
Preparing to unpack .../libavahi-compat-libdnssd-dev_0.6.31-4+b2_amd64.deb ...
Unpacking libavahi-compat-libdnssd-dev (0.6.31-4+b2) ...
Processing triggers for dbus (1.8.12-3) ...
Setting up libavahi-compat-libdnssd1:amd64 (0.6.31-4+b2) ...
Setting up libavahi-core7:amd64 (0.6.31-4+b2) ...
Setting up libdaemon0:amd64 (0.14-6) ...
Setting up libgeoip1:amd64 (1.6.2-4) ...
Setting up init-system-helpers (1.22) ...
Setting up libisc95 (1:9.9.5.dfsg-8) ...
Setting up libdns100 (1:9.9.5.dfsg-8) ...
Setting up libisccc90 (1:9.9.5.dfsg-8) ...
Setting up libisccfg90 (1:9.9.5.dfsg-8) ...
Setting up libbind9-90 (1:9.9.5.dfsg-8) ...
Setting up liblwres90 (1:9.9.5.dfsg-8) ...
Setting up bind9-host (1:9.9.5.dfsg-8) ...
Setting up avahi-daemon (0.6.31-4+b2) ...
invoke-rc.d: policy-rc.d denied execution of force-reload.
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
invoke-rc.d: policy-rc.d denied execution of start.
Setting up geoip-database (20141027-2) ...
Setting up libavahi-common-dev (0.6.31-4+b2) ...
Setting up libdbus-1-dev:amd64 (1.8.12-3) ...
Setting up libavahi-client-dev (0.6.31-4+b2) ...
Setting up libavahi-compat-libdnssd-dev (0.6.31-4+b2) ...
Processing triggers for dbus (1.8.12-3) ...
Setting up libnss-mdns:amd64 (0.10-6) ...
First installation detected...
Checking NSS setup...
Processing triggers for libc-bin (2.19-13) ...

> [email protected] install /usr/local/lib/node_modules/mdns2
> node-gyp rebuild

gyp WARN EACCES user "undefined" does not have permission to access the dev dir "/root/.node-gyp/0.12.0"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/mdns2/.node-gyp"
child_process: customFds option is deprecated, use stdio instead.
make: Entering directory '/usr/local/lib/node_modules/mdns2/build'
  CXX(target) Release/obj.target/dns_sd_bindings/src/dns_sd.o
In file included from ../src/dns_sd.cpp:5:0:
../src/mdns_utils.hpp: In function 'v8::Handle<v8::Value> node_mdns::throwError(const char*)':
../src/mdns_utils.hpp:16:50: error: 'New' is not a member of 'v8::String'
     return ThrowException( v8::Exception::Error( v8::String::New( message )));
                                                  ^
../src/mdns_utils.hpp:16:77: error: 'ThrowException' was not declared in this scope
     return ThrowException( v8::Exception::Error( v8::String::New( message )));
                                                                             ^
../src/mdns_utils.hpp: In function 'v8::Handle<v8::Value> node_mdns::throwTypeError(const char*)':
../src/mdns_utils.hpp:22:54: error: 'New' is not a member of 'v8::String'
     return ThrowException( v8::Exception::TypeError( v8::String::New( message )));
                                                      ^
../src/mdns_utils.hpp:22:81: error: 'ThrowException' was not declared in this scope
     return ThrowException( v8::Exception::TypeError( v8::String::New( message )));
                                                                                 ^
../src/mdns_utils.hpp: In function 'v8::Handle<v8::Value> node_mdns::throwMdnsError(DNSServiceErrorType)':
../src/mdns_utils.hpp:28:53: error: 'ThrowException' was not declared in this scope
     return ThrowException(buildException(error_code));
                                                     ^
../src/mdns_utils.hpp: At global scope:
../src/mdns_utils.hpp:33:37: error: 'node_mdns::argumentCountMismatch' declared as an 'inline' variable
 argumentCountMismatch(v8::Arguments const& args, int expectedCount) {
                                     ^
../src/mdns_utils.hpp:33:23: error: 'Arguments' is not a member of 'v8'
 argumentCountMismatch(v8::Arguments const& args, int expectedCount) {
                       ^
../src/mdns_utils.hpp:33:23: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
In file included from ../src/dns_sd.cpp:5:0:
../src/mdns_utils.hpp:33:50: error: expected primary-expression before 'int'
 argumentCountMismatch(v8::Arguments const& args, int expectedCount) {
                                                  ^
../src/mdns_utils.hpp:33:67: error: expression list treated as compound expression in initializer [-fpermissive]
 argumentCountMismatch(v8::Arguments const& args, int expectedCount) {
                                                                   ^
../src/mdns_utils.hpp:33:69: error: expected ',' or ';' before '{' token
 argumentCountMismatch(v8::Arguments const& args, int expectedCount) {
                                                                     ^
../src/mdns_utils.hpp:39:51: error: 'node_mdns::throwArgumentCountMismatchException' declared as an 'inline' variable
 throwArgumentCountMismatchException(v8::Arguments const& args, size_t expectedCount) {
                                                   ^
../src/mdns_utils.hpp:39:37: error: 'Arguments' is not a member of 'v8'
 throwArgumentCountMismatchException(v8::Arguments const& args, size_t expectedCount) {
                                     ^
../src/mdns_utils.hpp:39:37: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
In file included from ../src/dns_sd.cpp:5:0:
../src/mdns_utils.hpp:39:71: error: expected primary-expression before 'expectedCount'
 throwArgumentCountMismatchException(v8::Arguments const& args, size_t expectedCount) {
                                                                       ^
../src/mdns_utils.hpp:39:86: error: expected ',' or ';' before '{' token
 throwArgumentCountMismatchException(v8::Arguments const& args, size_t expectedCount) {
                                                                                      ^
../src/mdns_utils.hpp: In function 'v8::Local<v8::Value> node_mdns::stringOrUndefined(const char*)':
../src/mdns_utils.hpp:49:44: error: 'New' is not a member of 'v8::String'
     return v8::Local<v8::Value>::New(str ? v8::String::New(str) : v8::Undefined());
                                            ^
../src/mdns_utils.hpp:49:81: error: too few arguments to function 'v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)'
     return v8::Local<v8::Value>::New(str ? v8::String::New(str) : v8::Undefined());
                                                                                 ^
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:305:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
In file included from ../src/dns_sd.cpp:6:0:
../src/dns_service_ref.hpp: At global scope:
../src/dns_service_ref.hpp:8:44: error: expected class-name before '{' token
 class ServiceRef : public node::ObjectWrap {
                                            ^
../src/dns_service_ref.hpp:14:52: error: 'Arguments' in namespace 'v8' does not name a type
         static v8::Handle<v8::Value> New(const v8::Arguments & args);
                                                    ^
../src/dns_service_ref.hpp:37:21: error: 'v8::AccessorInfo' has not been declared
                 v8::AccessorInfo const& info);
                     ^
../src/dns_service_ref.hpp:39:21: error: 'v8::AccessorInfo' has not been declared
                 v8::AccessorInfo const& info);
                     ^
In file included from ../src/dns_sd.cpp:7:0:
../src/txt_record_ref.hpp:6:46: error: expected class-name before '{' token
 class TxtRecordRef : public node::ObjectWrap {
                                              ^
../src/txt_record_ref.hpp:12:52: error: 'Arguments' in namespace 'v8' does not name a type
         static v8::Handle<v8::Value> New(const v8::Arguments & args);
                                                    ^
../src/txt_record_ref.hpp: In static member function 'static bool node_mdns::TxtRecordRef::HasInstance(v8::Handle<v8::Value>)':
../src/txt_record_ref.hpp:19:40: error: base operand of '->' has non-pointer type 'v8::Persistent<v8::FunctionTemplate>'
             return constructor_template->HasInstance( object );
                                        ^
In file included from ../src/dns_sd.cpp:9:0:
../src/socket_watcher.hpp: At global scope:
../src/socket_watcher.hpp:6:47: error: expected class-name before '{' token
 class SocketWatcher : public node::ObjectWrap {
                                               ^
../src/socket_watcher.hpp:13:9: error: 'uv_poll_t' does not name a type
         uv_poll_t* poll_;
         ^
../src/socket_watcher.hpp:17:52: error: 'Arguments' in namespace 'v8' does not name a type
         static v8::Handle<v8::Value> New(const v8::Arguments & args);
                                                    ^
../src/socket_watcher.hpp:18:52: error: 'Arguments' in namespace 'v8' does not name a type
         static v8::Handle<v8::Value> Set(const v8::Arguments & args);
                                                    ^
../src/socket_watcher.hpp:19:54: error: 'Arguments' in namespace 'v8' does not name a type
         static v8::Handle<v8::Value> Start(const v8::Arguments& args);
                                                      ^
../src/socket_watcher.hpp:20:53: error: 'Arguments' in namespace 'v8' does not name a type
         static v8::Handle<v8::Value> Stop(const v8::Arguments& args);
                                                     ^
../src/socket_watcher.hpp:24:30: error: 'uv_poll_t' has not been declared
         static void Callback(uv_poll_t *w, int status, int events);
                              ^
../src/dns_sd.cpp:18:34: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceRegister(Arguments const& args); 
                                  ^
../src/dns_sd.cpp:18:34: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:19:35: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceRefSockFD(Arguments const& args); 
                                   ^
../src/dns_sd.cpp:19:35: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:20:39: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceProcessResult(Arguments const& args); 
                                       ^
../src/dns_sd.cpp:20:39: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:21:32: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceBrowse(Arguments const& args); 
                                ^
../src/dns_sd.cpp:21:32: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:22:39: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceRefDeallocate(Arguments const& args); 
                                       ^
../src/dns_sd.cpp:22:39: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:23:33: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceResolve(Arguments const& args); 
                                 ^
../src/dns_sd.cpp:23:33: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:24:42: error: 'Arguments' was not declared in this scope
 Handle<Value> DNSServiceEnumerateDomains(Arguments const& args); 
                                          ^
../src/dns_sd.cpp:24:42: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:28:31: error: 'Arguments' was not declared in this scope
 Handle<Value> TXTRecordCreate(Arguments const& args); 
                               ^
../src/dns_sd.cpp:28:31: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:29:35: error: 'Arguments' was not declared in this scope
 Handle<Value> TXTRecordDeallocate(Arguments const& args); 
                                   ^
../src/dns_sd.cpp:29:35: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:31:33: error: 'Arguments' was not declared in this scope
 Handle<Value> TXTRecordSetValue(Arguments const& args); 
                                 ^
../src/dns_sd.cpp:31:33: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:32:34: error: 'Arguments' was not declared in this scope
 Handle<Value> TXTRecordGetLength(Arguments const& args); 
                                  ^
../src/dns_sd.cpp:32:34: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:36:30: error: 'Arguments' was not declared in this scope
 Handle<Value> if_nametoindex(Arguments const& args); 
                              ^
../src/dns_sd.cpp:36:30: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:37:30: error: 'Arguments' was not declared in this scope
 Handle<Value> if_indextoname(Arguments const& args); 
                              ^
../src/dns_sd.cpp:37:30: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:41:39: error: 'Arguments' was not declared in this scope
 Handle<Value> txtRecordBufferToObject(Arguments const& args); 
                                       ^
../src/dns_sd.cpp:41:39: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:42:31: error: 'Arguments' was not declared in this scope
 Handle<Value> exportConstants(Arguments const& args);
                               ^
../src/dns_sd.cpp:42:31: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:43:40: error: 'v8::Handle<v8::Value> node_mdns::buildException' redeclared as different kind of symbol
 Handle<Value> buildException(Arguments const& args);
                                        ^
In file included from ../src/dns_sd.cpp:5:0:
../src/mdns_utils.hpp:11:22: note: previous declaration 'v8::Local<v8::Value> node_mdns::buildException(DNSServiceErrorType)'
 v8::Local<v8::Value> buildException(DNSServiceErrorType error_code);
                      ^
../src/dns_sd.cpp:43:30: error: 'Arguments' was not declared in this scope
 Handle<Value> buildException(Arguments const& args);
                              ^
../src/dns_sd.cpp:43:30: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:46:63: error: 'InvocationCallback' has not been declared
 void defineFunction(Handle<Object> target, const char * name, InvocationCallback f);
                                                               ^
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h: In function 'void node_mdns::init(v8::Handle<v8::Object>)':
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:816:13: error: 'v8::HandleScope::HandleScope()' is protected
   V8_INLINE HandleScope() {}
             ^
../src/dns_sd.cpp:51:17: error: within this context
     HandleScope scope;
                 ^
../src/dns_sd.cpp:59:68: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "DNSServiceRegister", DNSServiceRegister);
                                                                    ^
../src/dns_sd.cpp:60:70: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "DNSServiceRefSockFD", DNSServiceRefSockFD);
                                                                      ^
../src/dns_sd.cpp:61:78: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "DNSServiceProcessResult", DNSServiceProcessResult);
                                                                              ^
../src/dns_sd.cpp:62:64: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "DNSServiceBrowse", DNSServiceBrowse);
                                                                ^
../src/dns_sd.cpp:63:78: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "DNSServiceRefDeallocate", DNSServiceRefDeallocate);
                                                                              ^
../src/dns_sd.cpp:64:66: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "DNSServiceResolve", DNSServiceResolve);
                                                                  ^
../src/dns_sd.cpp:66:39: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
             DNSServiceEnumerateDomains);
                                       ^
../src/dns_sd.cpp:70:62: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "TXTRecordCreate", TXTRecordCreate);
                                                              ^
../src/dns_sd.cpp:71:70: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "TXTRecordDeallocate", TXTRecordDeallocate);
                                                                      ^
../src/dns_sd.cpp:73:66: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "TXTRecordSetValue", TXTRecordSetValue);
                                                                  ^
../src/dns_sd.cpp:74:68: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "TXTRecordGetLength", TXTRecordGetLength);
                                                                    ^
../src/dns_sd.cpp:77:60: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "if_nametoindex", if_nametoindex);
                                                            ^
../src/dns_sd.cpp:78:60: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "if_indextoname", if_indextoname);
                                                            ^
../src/dns_sd.cpp:81:78: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "txtRecordBufferToObject", txtRecordBufferToObject);
                                                                              ^
../src/dns_sd.cpp:82:60: error: invalid conversion from 'v8::Local<v8::Value> (*)(DNSServiceErrorType) {aka v8::Local<v8::Value> (*)(int)}' to 'int' [-fpermissive]
     defineFunction(target, "buildException", buildException);
                                                            ^
../src/dns_sd.cpp:46:6: note: initializing argument 3 of 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
 void defineFunction(Handle<Object> target, const char * name, InvocationCallback f);
      ^
../src/dns_sd.cpp:83:62: error: cannot convert 'v8::Handle<v8::Value>' to 'int' for argument '3' to 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)'
     defineFunction(target, "exportConstants", exportConstants);
                                                              ^
../src/dns_sd.cpp: At global scope:
../src/dns_sd.cpp:90:58: error: 'InvocationCallback' has not been declared
 defineFunction(Handle<Object> target, const char * name, InvocationCallback f) {
                                                          ^
../src/dns_sd.cpp: In function 'void node_mdns::defineFunction(v8::Handle<v8::Object>, const char*, int)':
../src/dns_sd.cpp:91:17: error: 'NewSymbol' is not a member of 'v8::String'
     target->Set(String::NewSymbol(name),
                 ^
../src/dns_sd.cpp:92:36: error: invalid conversion from 'int' to 'v8::Isolate*' [-fpermissive]
             FunctionTemplate::New(f)->GetFunction());
                                    ^
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:3455:34: note: initializing argument 1 of 'static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)'
   static Local<FunctionTemplate> New(
                                  ^
../src/dns_sd.cpp: At global scope:
../src/dns_sd.cpp:96:26: error: 'v8::Handle<v8::Value> node_mdns::buildException' redeclared as different kind of symbol
 buildException(Arguments const& args) {
                          ^
In file included from ../src/dns_sd.cpp:5:0:
../src/mdns_utils.hpp:11:22: note: previous declaration 'v8::Local<v8::Value> node_mdns::buildException(DNSServiceErrorType)'
 v8::Local<v8::Value> buildException(DNSServiceErrorType error_code);
                      ^
../src/dns_sd.cpp:96:16: error: 'Arguments' was not declared in this scope
 buildException(Arguments const& args) {
                ^
../src/dns_sd.cpp:96:16: note: suggested alternative:
In file included from /usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/src/node.h:61:0,
                 from ../src/mdns.hpp:11,
                 from ../src/dns_sd.cpp:1:
/usr/local/lib/node_modules/mdns2/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note:   'v8::internal::Arguments'
 class Arguments;
       ^
../src/dns_sd.cpp:321:45: error: expected '}' at end of input
 NODE_MODULE(dns_sd_bindings,node_mdns::init);
                                             ^
dns_sd_bindings.target.mk:134: recipe for target 'Release/obj.target/dns_sd_bindings/src/dns_sd.o' failed
make: Leaving directory '/usr/local/lib/node_modules/mdns2/build'
make: *** [Release/obj.target/dns_sd_bindings/src/dns_sd.o] Error 1
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:267:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1067:12)
gyp ERR! System Linux 3.16.7-tinycore64
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/mdns2
gyp ERR! node -v v0.12.0
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok 
npm ERR! Linux 3.16.7-tinycore64
npm ERR! argv "node" "/usr/local/bin/npm" "install" "-g" "mdns2"
npm ERR! node v0.12.0
npm ERR! npm  v2.5.0
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the mdns2 package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls mdns2
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /npm-debug.log

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

I would raise that here: https://github.com/Wizcorp/node_mdns/issues

Node 0.12.0 has a newer version of v8 and going by the errors, it looks like they are hitting something related to that.

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

And I get the same v8 related errors on iojs:1.1.0 too:

make: Entering directory '/usr/local/lib/node_modules/pm2-web/node_modules/mdns2/build'
  CXX(target) Release/obj.target/dns_sd_bindings/src/dns_sd.o
In file included from ../src/dns_sd.cpp:5:0:
../src/mdns_utils.hpp: In function 'v8::Handle<v8::Value> node_mdns::throwError(const char*)':
../src/mdns_utils.hpp:16:50: error: 'New' is not a member of 'v8::String'
     return ThrowException( v8::Exception::Error( v8::String::New( message )));
                                                  ^
../src/mdns_utils.hpp:16:77: error: 'ThrowException' was not declared in this scope
     return ThrowException( v8::Exception::Error( v8::String::New( message )));
                                                                             ^
../src/mdns_utils.hpp: In function 'v8::Handle<v8::Value> node_mdns::throwTypeError(const char*)':
../src/mdns_utils.hpp:22:54: error: 'New' is not a member of 'v8::String'
     return ThrowException( v8::Exception::TypeError( v8::String::New( message )));
                                                      ^

etc.

from docker-node.

md5 avatar md5 commented on May 17, 2024

I'm just commenting from the peanut gallery here (sorry).

I took a quick look at https://github.com/Wizcorp/node_mdns and it looks like they're recommending people switch back to https://github.com/agnat/node_mdns, i.e. switching from the mdns2 fork back to the now-maintained mdns. When I tried to npm install -g mdns under node:0.12 (and iojs:1.1.0), it worked fine.

So I guess the fix for anyone reading this is that pm2-web should be updated to use mdns instead of mdns2.

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

Oh, interesting. Yeah, worth someone raising with pm2-web I guess (rather than an issue about v8 compat)

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

Closing this out.

The main issue was a missing dependency (install libavahi-compat-libdnssd-dev) and the module requires the version of v8 that comes with 0.10.*

from docker-node.

lucaspottersky avatar lucaspottersky commented on May 17, 2024

I've got a similar error while trying to run npm install -g sails.

It worked when I switched from Node 4.0 to Node 0.11

from docker-node.

chorrell avatar chorrell commented on May 17, 2024

@lucaspottersky Seems like 4.0.0 support is an open issue? balderdashy/sails#3211

from docker-node.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.