Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

State of nodejs 4.0 support - ie NOT supported until this closed #578

Closed
jacobrosenthal opened this issue Sep 12, 2015 · 110 comments
Closed

Comments

@jacobrosenthal
Copy link
Contributor

Doesnt look like nan2.x will be a breaking change and still supports all node versions we support, ie this will not be a major release
#566 is the PR we're working on. It appears to be generated by one of the following migration scripts update_to_nan_v2.0.x.sh 1to2.js

If youd like to get ahead of us and use node4, or speed up the process npm install "git://github.com/ghostoy/node-serialport.git#nan1to2" and report your findings here

Weve got two windows issues that need reproduction and fixing:

Im contacting Chris about publishing and especially around all the changes to the travis file which also seems to be involved in publishing.

In my mind we merge a travis update so we can see whats up, then cherry pick or merge those PRs.

But let me reiterate, were not going to be able to support nan2 (and thus node 4) until we get some windows testers and feedback
Long term we're working on CI'ing this problem away (see nodejs/hardware#13 ) but we're not there yet.

@imyller
Copy link
Contributor

imyller commented Sep 12, 2015

Node.js@ARM with OpenEmbedded (Yocto, Ångstrom) is ready for this.

I'm maintaining Node.js layer for OE at https://github.com/imyller/meta-nodejs
Node.js 4.0 compiles and runs perfectly on embedded platforms.

@jacobrosenthal
Copy link
Contributor Author

@imyller can you comment on what was needed and thus what might be deficient on beaglebone and pi?

@imyller
Copy link
Contributor

imyller commented Sep 12, 2015

Well, I do not know the exact status of Rasbian or other pre-built distributions, but with OE everything in the distribution for the target device is compiled from source; including build system toolchains. OE is a build system - not a binary distribution.

The latest Yocto 1.8 includes gcc 4.9 and Node.js can be cross-compiled without any issues. Only thing needed are proper cross-compilation flags and configs (like meta-nodejs build scripts provides).

I've been running Node.js and io.js builds from 0.10 all the way to latest 4.0. Personally I'm running them with Beaglebone (ARM7) and x86_64.

I would say node-serialport need not to worry about availability of Node.js runtime itself. It is available for embedded platform if you have proper toolchain to build it or your binary distribution supports it. The real problem here is with node-serialport which does not support NAN v2 required for building with io.js 3+ or Node.js 4+.

Upgrading native bindings to NAN v2 does not break builds with earlier Node.js or io.js releases so it should be harmless upgrade.

@imyller
Copy link
Contributor

imyller commented Sep 12, 2015

Use case example:

Only reason current embeded hardware product we are maintaining is holding on to io.js 2.5.0 is due to fact that node-serialport hasn't shipped with NAN v2.

We'll upgrade to Node.js 4.0 once node-serialport jumps to NANv2.

Also, we are NOT npm install -ing the node-serialport inside the embedded ARMv7 target system (the target does not ship with compiler toolchains). We are cross-compiling the Node.js (io.js) on x86_64 host and running cross-compiling capable npm install to build node-serialport there. Then only prebuilt binaries are shipped with the embedded devices minimal rootfs image.

@ChALkeR
Copy link
Contributor

ChALkeR commented Sep 13, 2015

Adding to the list: nodejs/node#2798.

@fivdi
Copy link
Contributor

fivdi commented Sep 13, 2015

It sounds like we don't want to support a 1.x branch for some time?

Hmm, I don't understand what this means.

Then for our 2.0 release with node 4.0 support:

Our understanding is that node 4 (v8 anyway) requires gcc 4.8. Link?

nodejs/hardware#16 (comment)

And we're thus worried about our embedded friends (pi and beaglebone black) as theyre both 4.6.x by default. Can we confirm or deny problems here?

Just from googling, Seems like Debian Jesse will ship with 4.9.x and a jessie release of rasbian will come when theyre good and ready...

The current "Release" distributions for the Raspberry Pi and the BeagleBone Black ship with gcc/g++ 4.6.

For the Raspberry Pi this isn't a problem as Raspbian (Debian Wheezy) ships with an optional gcc/g++ 4.8 that can be installed as described here. Note that it's possible to have both 4.6 and 4.8 installed at the same time and switch between versions as required.

For the BeagleBone Black things are a little different. It's variant of Debian Wheezy doesn't ship the optional gcc/g++ 4.8 compilers. There are however Debian Jessie "testing" distributions available here. The testing distributions come with gcc/g++ 4.9.

A Post install script that autoinstalls and selects gcc4.8 system wide was discussed but I feel thats pretty heavy handed. It might be preferred to detect and simply give a link to instructions on how to do it yourself or select the 1.x branch of serialport if you can't

I, personally, don't like the idea of gcc/g++ 4.8 being automatically installed. Instructions on how to do it yourself sounds like a better idea to me.

In what scenario would it be necessary to "select the 1.x branch of serialport"? I don't think this will even be possible. If Node.js 4 is being used, and gcc/g++ 4.8 isn't available, it won't be possible to select the 1.x branch of serialport.

@imyller
Copy link
Contributor

imyller commented Sep 13, 2015

Why node-serialport has to worry about what compiler is available to which platform? This is about NAN. The bindings made with NAN v2 compiles (to my knowledge) on both newer and older gcc and Node.js. Same might not apply to Node.js or v8 itself, but that isn't a node-serialport issue.

So why not just jump to NAN v2 and let users play your what node.js or compiler combination they have.

Correct me if I'm wrong, but using NAN v2 does not break backwards compatibility; with compilers or with Node.js versions. It just offers capability to use node-serialport with Node.js 4+ for those who are otherwise able to do so.

@fivdi
Copy link
Contributor

fivdi commented Sep 13, 2015

Why node-serialport has to worry about what compiler is available to which platform?

It doesn't actually have to worry about what compiler is available to which platform if it doesn't want to. I might be wrong, but this discussion is more about moving everyone forward towards Node.js 4+ without leaving too many of them behind.

The bindings made with NAN v2 compiles (to my knowledge) on both newer and older gcc and Node.js. Same might not apply to Node.js or v8 itself, but that isn't a node-serialport issue.

Correct.

So why not just jump to NAN v2 and let users play your what node.js or compiler combination they have.

I can imagine this happening in the not too distant future.

Correct me if I'm wrong, but using NAN v2 does not break backwards compatibility; with compilers or with Node.js versions. It just offers capability to use node-serialport with Node.js 4+ for those who are otherwise able to do so.

There's nothing to correct here :)

@kfatehi
Copy link

kfatehi commented Sep 13, 2015

Just want to chime in to say thanks @jacobrosenthal for specifying that node-serialport compiles in iojs v2.5.0. It installs no problem in node 0.12.x but failed for me in node 4 and iojs 3.3.x. I was not sure what was going on until I saw this thread.

@N4TY
Copy link

N4TY commented Sep 15, 2015

Would this also be related to issue #579 ?

@kfatehi
Copy link

kfatehi commented Sep 15, 2015

@N4TY Yes. I just updated #579 with what I think may help you.

Cosmo referenced this issue in homebridge/homebridge Sep 17, 2015
Add shim for devices with serial connection
@jacobrosenthal jacobrosenthal changed the title nodejs 4.0 support State of nodejs 4.0 support Sep 21, 2015
@jacobrosenthal jacobrosenthal changed the title State of nodejs 4.0 support State of nodejs 4.0 support - ie NOT supported until this closed Sep 21, 2015
@tigoe
Copy link
Contributor

tigoe commented Sep 24, 2015

This makes me sad. I have a bunch of examples for node-serialport and I want to be able to upgrade node (and I know students new to node will start with the standard install), but until this is working with the current version, they're all useless. I don't have a windows machine (working in OSX), but I can set one up. If you have end-user tests for people to run that'd help, please post them and I'll give them a try.

@rwaldron
Copy link
Contributor

This makes me sad.

What about this makes you sad? People are actively working on confirmations to ensure a smooth transition. There is nothing sad-making about that. Pitching in is appreciated, but editorializing isn't constructive—agreed?

@tigoe
Copy link
Contributor

tigoe commented Sep 24, 2015

Agreed. Sorry, didn't mean to be editorializing. If there's a list of tests to be run, let me know and I'll try if I've got the resources to run them.

@rwaldron
Copy link
Contributor

@tigoe
Copy link
Contributor

tigoe commented Sep 24, 2015

Looks like the examples I usually use for testing. I haven't got a lot to add as it failed at the same place for me: all working great until I upgraded from node 0.11.x to 4.1.1, when I get more or less the same compile errors as others have:

(FWIW, OSX 10.10.5 (14F27), node v4.1.1. Serial ports working fine with Arduino 1.6.5, Coolterm, screen, etc)

  CXX(target) Release/obj.target/serialport/src/serialport.o
In file included from ../src/serialport.cpp:3:
In file included from ../src/serialport.h:5:
../node_modules/nan/nan.h:261:25: error: redefinition of '_NanEnsureLocal'
NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Local<T> val) {

and goes on from there. Doesn't look like anything new or surprising, but if so, let me know and I'll pull the full log. Looks like it's just confirmation that it's related to NAN.

I have some pre-compiled installations of serialport (I tend to install it locally per project rather than globally), which fail as follows:

$ node ListPorts.js
module.js:338
    throw err;
    ^

Error: Cannot find module '/Users/tigoe/Documents/github/NodeExamples/SerialIntro/node_modules/serialport/build/serialport/v1.7.4/Release/node-v46-darwin-x64/serialport.node'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:286:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/Users/tigoe/Documents/github/NodeExamples/SerialIntro/node_modules/serialport/serialport.js:14:25)
    at Module._compile (module.js:434:26)
    at Object.Module._extensions..js (module.js:452:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)

I saw the note above that you're looking for windows testers, which I'm not, but I've got a win7 machine sitting around that's never had node on it before, so it'd be a virgin install. It's an old netbook though, maybe 4 years old. That useful at all? Can see if we've got anything around here running win8, too.

@fivdi
Copy link
Contributor

fivdi commented Sep 25, 2015

@tigoe it looks like you did an npm install serialport which isn't going to work with Node.js v4.1.1

There are currently two pull requests for Node.js 4 support, #566 and #571.

#566 can be installed with npm install "git://github.com/ghostoy/node-serialport.git#nan1to2"

#571 can be installed with npm install "git://github.com/julianduque/node-serialport.git#master"

You could try either or both of them and report your findings.

@fivdi
Copy link
Contributor

fivdi commented Sep 26, 2015

@cpustar can you provide more information about what doesn't work? Is it the install that doesn't work? If so, what is the output of the install process? Or are there problems at runtime?

@ghost
Copy link

ghost commented Sep 27, 2015

Not sure if this will be of any help but I'm running Windows 10 64-bit, Node 4.1.1, Visual Studio 2015 Community and Visual Studio 2013 Community.

My initial attempt to install with the ghostoy fork failed with the following error:

error MSB8020: The builds tools for v140 (Platform Toolset = 'v140') cannot be found.

This was solved by setting the msbuild path:
set path=C:\Program Files (x86)\MSBuild\14.0\Bin;%path%

After this, the install went smoothly (there were a number of warnings during build, mainly to do with type casting causing truncation) and I had no problems using serialport in node afterwards.

@jacobrosenthal
Copy link
Contributor Author

Chris thought he had assigned all publish privileges and I attempted to
release, but that wasn't the case. He will be trying again (tonight?)

Note we went with major as at least one platform (pi under wheezy) will be
broken until they upgrade gcc

On Mon, Oct 12, 2015 at 8:09 PM, Olivier Louvignes <notifications@github.com

wrote:

Looks like the v2.0.0 is not released yet. Any timeframe for npm publish?
Anyway congrats!


Reply to this email directly or view it on GitHub
#578 (comment)
.

@voodootikigod
Copy link
Collaborator

I have nam published 

-- 
Chris Williams
Sent with Airmail

On October 12, 2015 at 2:27:32 PM, Jacob Rosenthal (notifications@github.com) wrote:

Chris thought he had assigned all publish privileges and I attempted to
release, but that wasn't the case. He will be trying again (tonight?)

Note we went with major as at least one platform (pi under wheezy) will be
broken until they upgrade gcc

On Mon, Oct 12, 2015 at 8:09 PM, Olivier Louvignes <notifications@github.com

wrote:

Looks like the v2.0.0 is not released yet. Any timeframe for npm publish?
Anyway congrats!


Reply to this email directly or view it on GitHub
#578 (comment)
.


Reply to this email directly or view it on GitHub.

@fivdi
Copy link
Contributor

fivdi commented Oct 12, 2015

haha, very nice

pi@raspberrypi ~/dev/sp $ npm install serialport
\
> serialport@2.0.0 install /home/pi/dev/sp/node_modules/serialport
> node-pre-gyp install --fallback-to-build

(node) child_process: options.customFds option is deprecated. Use options.stdio instead.
make: Entering directory '/home/pi/dev/sp/node_modules/serialport/build'
  CXX(target) Release/obj.target/serialport/src/serialport.o
  CXX(target) Release/obj.target/serialport/src/serialport_unix.o
  CXX(target) Release/obj.target/serialport/src/serialport_poller.o
  SOLINK_MODULE(target) Release/obj.target/serialport.node
  COPY Release/serialport.node
  COPY /home/pi/dev/sp/node_modules/serialport/build/serialport/v2.0.0/Release/node-v46-linux-arm/serialport.node
  TOUCH Release/obj.target/action_after_build.stamp
make: Leaving directory '/home/pi/dev/sp/node_modules/serialport/build'
serialport@2.0.0 node_modules/serialport
├── bindings@1.2.1
├── sf@0.1.7
├── async@0.9.0
├── nan@2.0.9
├── debug@2.2.0 (ms@0.7.1)
└── optimist@0.6.1 (wordwrap@0.0.3, minimist@0.0.10)
pi@raspberrypi ~/dev/sp $ 

@noopkat
Copy link

noopkat commented Oct 12, 2015

amazing work to everyone who got this over the line!! 🚀

@UnidentifiedContributor

Thank you, everyone! You're all awesome. ⭐

@tigoe
Copy link
Contributor

tigoe commented Oct 13, 2015

All works here, using node 4.1.1, OSX 10.11, and all my examples work. Yay! Thanks everyone for the hard work.

@alexcroox
Copy link

It didn't like it on my Pi (node v4.2.1)

> serialport@2.0.0 install /home/pi/node_modules/serialport
> node-pre-gyp install --fallback-to-build

(node) child_process: options.customFds option is deprecated. Use options.stdio instead.
make: Entering directory '/home/pi/node_modules/serialport/build'
  CXX(target) Release/obj.target/serialport/src/serialport.o
In file included from /home/pi/.node-gyp/4.2.1/include/node/node.h:42:0,
                 from ../node_modules/nan/nan.h:24,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
/home/pi/.node-gyp/4.2.1/include/node/v8.h:336:1: error: expected unqualified-id before ‘using’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:469:1: error: expected unqualified-id before ‘using’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:852:1: error: expected unqualified-id before ‘using’
In file included from ../node_modules/nan/nan.h:182:0,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan_maybe_43_inl.h:13:1: error: expected unqualified-id before ‘using’
../node_modules/nan/nan_maybe_43_inl.h:16:1: error: expected unqualified-id before ‘using’
../node_modules/nan/nan_maybe_43_inl.h:19:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:24:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:31:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:36:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:41:1: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:46:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:51:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:60:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:65:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:70:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:77:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:84:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:92:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:99:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:109:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:115:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:119:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:126:1: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:131:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:136:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:140:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:146:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:151:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:157:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:163:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:169:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:175:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:181:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:187:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:195:12: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:202:1: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:206:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:210:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:214:12: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_maybe_43_inl.h:218:12: error: ‘MaybeLocal’ does not name a type
In file included from ../node_modules/nan/nan.h:187:0,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan_converters.h:14:11: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_converters.h:16:56: error: ‘Maybe’ does not name a type
../node_modules/nan/nan_converters.h:26:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:27:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:28:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:29:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:30:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:31:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:32:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:42:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:43:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:44:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:45:1: error: ‘return_t’ does not name a type
../node_modules/nan/nan_converters.h:46:1: error: ‘return_t’ does not name a type
In file included from ../node_modules/nan/nan_converters.h:59:0,
                 from ../node_modules/nan/nan.h:187,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan_converters_43_inl.h:18:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::Boolean>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:19:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::Number>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:20:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::String>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:21:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::Object>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:22:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::Integer>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:23:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::Uint32>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:24:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<v8::Int32>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:34:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<bool>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:35:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<double>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:36:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<long long int>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:37:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<unsigned int>’ does not name a type
../node_modules/nan/nan_converters_43_inl.h:38:1: error: ‘return_t’ in ‘struct Nan::imp::ToFactory<int>’ does not name a type
In file included from ../node_modules/nan/nan.h:188:0,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan_new.h: In function ‘v8::Local<T> Nan::imp::To(v8::Local<v8::Integer>) [with T = v8::Integer]’:
../node_modules/nan/nan_new.h:21:32: error: no matching function for call to ‘To(v8::Local<v8::Integer>&)’
../node_modules/nan/nan_new.h:21:32: note: candidate is:
../node_modules/nan/nan_converters.h:53:38: note: template<class T> typename Nan::imp::ToFactory::return_t Nan::To(v8::Local<v8::Value>)
../node_modules/nan/nan_new.h: In function ‘v8::Local<T> Nan::imp::To(v8::Local<v8::Integer>) [with T = v8::Int32]’:
../node_modules/nan/nan_new.h:28:30: error: no matching function for call to ‘To(v8::Local<v8::Integer>&)’
../node_modules/nan/nan_new.h:28:30: note: candidate is:
../node_modules/nan/nan_converters.h:53:38: note: template<class T> typename Nan::imp::ToFactory::return_t Nan::To(v8::Local<v8::Value>)
../node_modules/nan/nan_new.h: In function ‘v8::Local<T> Nan::imp::To(v8::Local<v8::Integer>) [with T = v8::Uint32]’:
../node_modules/nan/nan_new.h:35:31: error: no matching function for call to ‘To(v8::Local<v8::Integer>&)’
../node_modules/nan/nan_new.h:35:31: note: candidate is:
../node_modules/nan/nan_converters.h:53:38: note: template<class T> typename Nan::imp::ToFactory::return_t Nan::To(v8::Local<v8::Value>)
../node_modules/nan/nan_new.h: At global scope:
../node_modules/nan/nan_new.h:43:11: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan_new.h:75:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:141:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:147:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:148:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:160:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:161:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:162:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:163:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:165:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:166:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:182:17: error: ‘return_t’ does not name a type
../node_modules/nan/nan_new.h:183:17: error: ‘return_t’ does not name a type
In file included from ../node_modules/nan/nan_new.h:189:0,
                 from ../node_modules/nan/nan.h:188,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan_implementation_12_inl.h:56:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::Date>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase<v8::Function>::return_t Nan::imp::Factory<v8::Function>::New(Nan::FunctionCallback, v8::Local<v8::Value>)’:
../node_modules/nan/nan_implementation_12_inl.h:90:46: error: ‘NewInstance’ was not declared in this scope
../node_modules/nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase<v8::FunctionTemplate>::return_t Nan::imp::Factory<v8::FunctionTemplate>::New(Nan::FunctionCallback, v8::Local<v8::Value>, v8::Local<v8::Signature>)’:
../node_modules/nan/nan_implementation_12_inl.h:118:48: error: ‘NewInstance’ was not declared in this scope
../node_modules/nan/nan_implementation_12_inl.h: At global scope:
../node_modules/nan/nan_implementation_12_inl.h:197:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::RegExp>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:216:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::Script>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:222:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::Script>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:254:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:262:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:268:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:275:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:281:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:286:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:347:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::UnboundScript>’ does not name a type
../node_modules/nan/nan_implementation_12_inl.h:354:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::UnboundScript>’ does not name a type
In file included from ../node_modules/nan/nan.h:188:0,
                 from ../src/serialport.h:5,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan_new.h:291:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_new.h:297:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_new.h:303:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_new.h:309:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_new.h:315:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_new.h:321:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::String>’ does not name a type
../node_modules/nan/nan_new.h:327:1: error: ‘return_t’ in ‘struct Nan::imp::Factory<v8::RegExp>’ does not name a type
In file included from ../src/serialport.h:5:0,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan.h: In function ‘v8::Local<v8::Value> Nan::Error(const char*)’:
../node_modules/nan/nan.h:639:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::ThrowError(const char*)’:
../node_modules/nan/nan.h:639:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘v8::Local<v8::Value> Nan::RangeError(const char*)’:
../node_modules/nan/nan.h:640:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::ThrowRangeError(const char*)’:
../node_modules/nan/nan.h:640:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘v8::Local<v8::Value> Nan::ReferenceError(const char*)’:
../node_modules/nan/nan.h:641:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::ThrowReferenceError(const char*)’:
../node_modules/nan/nan.h:641:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘v8::Local<v8::Value> Nan::SyntaxError(const char*)’:
../node_modules/nan/nan.h:642:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::ThrowSyntaxError(const char*)’:
../node_modules/nan/nan.h:642:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘v8::Local<v8::Value> Nan::TypeError(const char*)’:
../node_modules/nan/nan.h:643:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::ThrowTypeError(const char*)’:
../node_modules/nan/nan.h:643:3: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: At global scope:
../node_modules/nan/nan.h:651:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:673:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:689:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:702:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:719:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:725:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:733:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:740:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h:746:14: error: ‘MaybeLocal’ does not name a type
../node_modules/nan/nan.h: In member function ‘void Nan::Callback::SetFunction(const v8::Local<v8::Function>&)’:
../node_modules/nan/nan.h:1366:40: error: ‘Set’ was not declared in this scope
../node_modules/nan/nan.h:1366:40: note: suggested alternative:
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../node_modules/nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Local<v8::Value>&)’:
../node_modules/nan/nan.h:1488:41: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const’:
../node_modules/nan/nan.h:1506:45: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In member function ‘virtual void Nan::AsyncWorker::HandleErrorCallback()’:
../node_modules/nan/nan.h:1540:58: error: no matching function for call to ‘New(const char*)’
../node_modules/nan/nan.h:1540:58: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../node_modules/nan/nan.h: In function ‘void Nan::SetMethod(const T&, const char*, Nan::FunctionCallback)’:
../node_modules/nan/nan.h:1829:16: error: there are no arguments to ‘GetFunction’ that depend on a template parameter, so a declaration of ‘GetFunction’ must be available [-fpermissive]
../node_modules/nan/nan.h:1829:16: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
../node_modules/nan/nan.h:1830:45: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::SetPrototypeMethod(v8::Local<v8::FunctionTemplate>, const char*, Nan::FunctionCallback)’:
../node_modules/nan/nan.h:1842:32: error: ‘GetFunction’ was not declared in this scope
../node_modules/nan/nan.h:1843:45: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In function ‘void Nan::SetAccessor(v8::Local<v8::ObjectTemplate>, v8::Local<v8::String>, Nan::GetterCallback, Nan::SetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute, Nan::imp::Sig)’:
../node_modules/nan/nan.h:1868:47: error: ‘NewInstance’ was not declared in this scope
../node_modules/nan/nan.h: In function ‘bool Nan::SetAccessor(v8::Local<v8::Object>, v8::Local<v8::String>, Nan::GetterCallback, Nan::SetterCallback, v8::Local<v8::Value>, v8::AccessControl, v8::PropertyAttribute)’:
../node_modules/nan/nan.h:1911:51: error: ‘NewInstance’ was not declared in this scope
../node_modules/nan/nan.h: In function ‘void Nan::SetNamedPropertyHandler(v8::Local<v8::ObjectTemplate>, Nan::PropertyGetterCallback, Nan::PropertySetterCallback, Nan::PropertyQueryCallback, Nan::PropertyDeleterCallback, Nan::PropertyEnumeratorCallback, v8::Local<v8::Value>)’:
../node_modules/nan/nan.h:1959:47: error: ‘NewInstance’ was not declared in this scope
../node_modules/nan/nan.h: In function ‘void Nan::SetIndexedPropertyHandler(v8::Local<v8::ObjectTemplate>, Nan::IndexGetterCallback, Nan::IndexSetterCallback, Nan::IndexQueryCallback, Nan::IndexDeleterCallback, Nan::IndexEnumeratorCallback, v8::Local<v8::Value>)’:
../node_modules/nan/nan.h:2029:47: error: ‘NewInstance’ was not declared in this scope
In file included from ../src/serialport.h:5:0,
                 from ../src/serialport.cpp:3:
../node_modules/nan/nan.h: In function ‘void Nan::Export(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE, const char*, Nan::FunctionCallback)’:
../node_modules/nan/nan.h:2090:35: error: no matching function for call to ‘New(const char*&)’
../node_modules/nan/nan.h:2090:35: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../node_modules/nan/nan.h:2091:47: error: ‘GetFunction’ was not declared in this scope
../node_modules/nan/nan.h:2091:65: error: ‘Set’ was not declared in this scope
../node_modules/nan/nan.h:2091:65: note: suggested alternative:
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../node_modules/nan/nan.h: In constructor ‘Nan::Tap::Tap(v8::Local<v8::Value>)’:
../node_modules/nan/nan.h:2098:30: error: no matching function for call to ‘To(v8::Local<v8::Value>&)’
../node_modules/nan/nan.h:2098:30: note: candidate is:
../node_modules/nan/nan_converters.h:53:38: note: template<class T> typename Nan::imp::ToFactory::return_t Nan::To(v8::Local<v8::Value>)
../node_modules/nan/nan.h: In member function ‘void Nan::Tap::ok(bool, const char*)’:
../node_modules/nan/nan.h:2111:33: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
../node_modules/nan/nan.h: In member function ‘void Nan::Tap::pass(const char*)’:
../node_modules/nan/nan.h:2117:30: error: ‘Nan::imp::FactoryBase<v8::Boolean>::return_t’ has no member named ‘ToLocalChecked’
In file included from ../src/serialport.cpp:8:0:
../src/serialport_poller.h: At global scope:
../src/serialport_poller.h:13:24: error: ‘v8::Handle’ has not been declared
../src/serialport_poller.h:13:30: error: expected ‘,’ or ‘...’ before ‘<’ token
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:115:21: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:115:70: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:115:70: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:116:21: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:116:70: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:116:70: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:117:23: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:117:74: error: no matching function for call to ‘New(const char [11])’
../src/serialport.cpp:117:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:118:32: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:118:79: error: no matching function for call to ‘New(const char [7])’
../src/serialport.cpp:118:79: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:119:35: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:119:84: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:119:84: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:120:19: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:120:66: error: no matching function for call to ‘New(const char [7])’
../src/serialport.cpp:120:66: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:121:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:121:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:121:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:122:17: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:122:62: error: no matching function for call to ‘New(const char [5])’
../src/serialport.cpp:122:62: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:123:17: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:123:62: error: no matching function for call to ‘New(const char [5])’
../src/serialport.cpp:123:62: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:124:18: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:124:64: error: no matching function for call to ‘New(const char [6])’
../src/serialport.cpp:124:64: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:126:43: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:126:99: error: no matching function for call to ‘New(const char [16])’
../src/serialport.cpp:126:99: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:130:43: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:130:96: error: no matching function for call to ‘New(const char [13])’
../src/serialport.cpp:130:96: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:130:148: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:130:150: error: expected primary-expression before ‘)’ token
../src/serialport.cpp:131:51: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:131:112: error: no matching function for call to ‘New(const char [21])’
../src/serialport.cpp:131:112: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:131:164: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:131:166: error: expected primary-expression before ‘)’ token
../src/serialport.cpp:132:44: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:132:98: error: no matching function for call to ‘New(const char [14])’
../src/serialport.cpp:132:98: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:132:150: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:132:152: error: expected primary-expression before ‘)’ token
../src/serialport.cpp: In function ‘void EIO_AfterOpen(uv_work_t*)’:
../src/serialport.cpp:149:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:149:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:199:21: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:199:70: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:199:70: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:200:21: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:200:70: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:200:70: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:201:23: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:201:74: error: no matching function for call to ‘New(const char [11])’
../src/serialport.cpp:201:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:202:32: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:202:79: error: no matching function for call to ‘New(const char [7])’
../src/serialport.cpp:202:79: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:203:35: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:203:84: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:203:84: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:204:19: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:204:66: error: no matching function for call to ‘New(const char [7])’
../src/serialport.cpp:204:66: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:205:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:205:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:205:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:206:17: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:206:62: error: no matching function for call to ‘New(const char [5])’
../src/serialport.cpp:206:62: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:207:17: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:207:62: error: no matching function for call to ‘New(const char [5])’
../src/serialport.cpp:207:62: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:209:43: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:209:99: error: no matching function for call to ‘New(const char [16])’
../src/serialport.cpp:209:99: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:213:43: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:213:96: error: no matching function for call to ‘New(const char [13])’
../src/serialport.cpp:213:96: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:213:148: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:213:150: error: expected primary-expression before ‘)’ token
../src/serialport.cpp:214:51: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:214:112: error: no matching function for call to ‘New(const char [21])’
../src/serialport.cpp:214:112: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:214:164: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:214:166: error: expected primary-expression before ‘)’ token
../src/serialport.cpp:215:44: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:215:98: error: no matching function for call to ‘New(const char [14])’
../src/serialport.cpp:215:98: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:215:150: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:215:152: error: expected primary-expression before ‘)’ token
../src/serialport.cpp: In function ‘void EIO_AfterUpdate(uv_work_t*)’:
../src/serialport.cpp:232:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:232:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘void EIO_AfterWrite(uv_work_t*)’:
../src/serialport.cpp:323:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:323:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t*)’:
../src/serialport.cpp:402:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:402:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘void EIO_AfterList(uv_work_t*)’:
../src/serialport.cpp:457:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:457:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:464:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:464:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:464:52: error: no matching function for call to ‘New(const char [8])’
../src/serialport.cpp:464:52: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:464:115: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:464:115: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:465:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:465:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:465:57: error: no matching function for call to ‘New(const char [13])’
../src/serialport.cpp:465:57: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:465:125: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:465:125: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:466:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:466:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:466:57: error: no matching function for call to ‘New(const char [13])’
../src/serialport.cpp:466:57: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:466:125: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:466:125: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:467:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:467:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:467:50: error: no matching function for call to ‘New(const char [6])’
../src/serialport.cpp:467:50: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:467:111: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:467:111: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:468:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:468:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:468:55: error: no matching function for call to ‘New(const char [11])’
../src/serialport.cpp:468:55: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:468:121: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:468:121: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:469:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:469:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:469:53: error: no matching function for call to ‘New(const char [9])’
../src/serialport.cpp:469:53: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:469:117: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:469:117: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:470:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:470:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp:470:54: error: no matching function for call to ‘New(const char [10])’
../src/serialport.cpp:470:54: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:470:119: error: no matching function for call to ‘New(const char*)’
../src/serialport.cpp:470:119: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:471:7: error: ‘Set’ is not a member of ‘Nan’
../src/serialport.cpp:471:7: note: suggested alternatives:
../src/serialport.h:53:1: note:   ‘Set’
/home/pi/.node-gyp/4.2.1/include/node/v8.h:3021:17: note:   ‘v8::Set’
../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t*)’:
../src/serialport.cpp:522:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:522:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:562:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:562:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:562:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:563:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:563:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:563:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:564:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:564:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:564:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:565:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:565:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:565:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp:566:16: error: ‘Get’ is not a member of ‘Nan’
../src/serialport.cpp:566:60: error: no matching function for call to ‘New(const char [4])’
../src/serialport.cpp:566:60: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘void EIO_AfterSet(uv_work_t*)’:
../src/serialport.cpp:583:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:583:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t*)’:
../src/serialport.cpp:632:74: error: no matching function for call to ‘New(char [1024])’
../src/serialport.cpp:632:74: note: candidates are:
../node_modules/nan/nan_implementation_12_inl.h:390:21: note: template<class T, class M> v8::Local<T> Nan::New(const v8::Persistent<S, M>&)
../node_modules/nan/nan_implementation_12_inl.h:395:21: note: template<class T, class M> v8::Local<T> Nan::New(const Nan::Persistent<T, M>&)
../node_modules/nan/nan_new.h:201:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New()
../node_modules/nan/nan_new.h:207:1: note: template<class T, class A0> typename Nan::imp::Factory<T>::return_t Nan::New(A0)
../node_modules/nan/nan_new.h:213:1: note: template<class T, class A0, class A1> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1)
../node_modules/nan/nan_new.h:219:1: note: template<class T, class A0, class A1, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2)
../node_modules/nan/nan_new.h:225:1: note: template<class T, class A0, class A1, class A2, class A3> typename Nan::imp::Factory<T>::return_t Nan::New(A0, A1, A2, A3)
../node_modules/nan/nan_new.h:237:1: note: template<class T> typename Nan::imp::Factory::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>)
../node_modules/nan/nan_new.h:245:1: note: template<class T, class A2> typename Nan::imp::Factory<T>::return_t Nan::New(Nan::FunctionCallback, v8::Local<v8::Value>, A2)
../src/serialport.cpp: At global scope:
../src/serialport.cpp:678:18: error: variable or field ‘init’ declared void
../src/serialport.cpp:678:14: error: ‘Handle’ is not a member of ‘v8’
../src/serialport.cpp:678:35: error: expected primary-expression before ‘>’ token
../src/serialport.cpp:678:37: error: ‘target’ was not declared in this scope
../src/serialport.cpp:696:1: error: ‘init’ was not declared in this scope
../node_modules/nan/nan_new.h: In function ‘v8::Local<T> Nan::imp::To(v8::Local<v8::Integer>) [with T = v8::Int32]’:
../node_modules/nan/nan_new.h:29:1: warning: control reaches end of non-void function [-Wreturn-type]
serialport.target.mk:90: recipe for target 'Release/obj.target/serialport/src/serialport.o' failed
make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
make: Leaving directory '/home/pi/node_modules/serialport/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:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.1.7-v7+
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--name=serialport" "--configuration=Release" "--module_name=serialport" "--version=2.0.0" "--major=2" "--runtime=node" "--node_abi=node-v46" "--platform=linux" "--target_platform=linux" "--arch=arm" "--target_arch=arm" "--module_main=./serialport" "--host=https://node-serialport.s3.amazonaws.com/" "--module_path=/home/pi/node_modules/serialport/build/serialport/v2.0.0/Release/node-v46-linux-arm" "--remote_path=./serialport/v2.0.0/Release/" "--package_name=node-v46-linux-arm.tar.gz" "--staged_tarball=build/stage/serialport/v2.0.0/Release/node-v46-linux-arm.tar.gz" "--hosted_path=https://node-serialport.s3.amazonaws.com/serialport/v2.0.0/Release/" "--hosted_tarball=https://node-serialport.s3.amazonaws.com/serialport/v2.0.0/Release/node-v46-linux-arm.tar.gz"
gyp ERR! cwd /home/pi/node_modules/serialport
gyp ERR! node -v v4.2.1
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 '/usr/local/bin/node rebuild --name=serialport --configuration=Release --module_name=serialport --version=2.0.0 --major=2 --runtime=node --node_abi=node-v46 --platform=linux --target_platform=linux --arch=arm --target_arch=arm --module_main=./serialport --host=https://node-serialport.s3.amazonaws.com/ --module_path=/home/pi/node_modules/serialport/build/serialport/v2.0.0/Release/node-v46-linux-arm --remote_path=./serialport/v2.0.0/Release/ --package_name=node-v46-linux-arm.tar.gz --staged_tarball=build/stage/serialport/v2.0.0/Release/node-v46-linux-arm.tar.gz --hosted_path=https://node-serialport.s3.amazonaws.com/serialport/v2.0.0/Release/ --hosted_tarball=https://node-serialport.s3.amazonaws.com/serialport/v2.0.0/Release/node-v46-linux-arm.tar.gz' (1)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/home/pi/node_modules/serialport/node_modules/node-pre-gyp/lib/util/compile.js:76: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.1.7-v7+
node-pre-gyp ERR! command "/usr/local/bin/node" "/home/pi/node_modules/serialport/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /home/pi/node_modules/serialport
node-pre-gyp ERR! node -v v4.2.1
node-pre-gyp ERR! node-pre-gyp -v v0.5.19
node-pre-gyp ERR! not ok 
Failed to execute '/usr/local/bin/node rebuild --name=serialport --configuration=Release --module_name=serialport --version=2.0.0 --major=2 --runtime=node --node_abi=node-v46 --platform=linux --target_platform=linux --arch=arm --target_arch=arm --module_main=./serialport --host=https://node-serialport.s3.amazonaws.com/ --module_path=/home/pi/node_modules/serialport/build/serialport/v2.0.0/Release/node-v46-linux-arm --remote_path=./serialport/v2.0.0/Release/ --package_name=node-v46-linux-arm.tar.gz --staged_tarball=build/stage/serialport/v2.0.0/Release/node-v46-linux-arm.tar.gz --hosted_path=https://node-serialport.s3.amazonaws.com/serialport/v2.0.0/Release/ --hosted_tarball=https://node-serialport.s3.amazonaws.com/serialport/v2.0.0/Release/node-v46-linux-arm.tar.gz' (1)
npm ERR! Linux 4.1.7-v7+
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "--save" "serialport"
npm ERR! node v4.2.1
npm ERR! npm  v2.14.7
npm ERR! code ELIFECYCLE

npm ERR! serialport@2.0.0 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the serialport@2.0.0 install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! This is most likely a problem with the serialport 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 serialport
npm ERR! There is likely additional logging output above.

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

@WangJi
Copy link

WangJi commented Oct 14, 2015

Fail to compile serialPort@v2.0.0 on windows with Node 4.1.1 , I get a bunch errors similar to @alexcroox .

@imyller
Copy link
Contributor

imyller commented Oct 14, 2015

@alexcroox @WangJi

As far as I can see node-serialport 2.0.0 has proper native binding and is using Nan as intended. This means that any build environment capable of compiling Node.js binary, will be able to compile the node-serialport native library for it. With this logic, it can be reasoned that fault is not with the node-serialport package. Node.js 4.x just needs newer build tools.

Using pre-built Node.js binaries, you will be able to run Node.js itself, but that does not guarantee that you've got proper build environment for compiling anything against its headers.

I'd recommend you check availability of some basic build tool versions:

  • GCC and G++ 4.8 or newer, or
  • CLANG and CLANG++ 3.4 or newer
  • Python 2.6 or 2.7
  • GNU Make 3.81 or newer

If any of these minimum versions are not met, you are not likely to succeed building native modules against Node.js 4.x headers or compiling Node.js runtime itself.

@WangJi
Copy link

WangJi commented Oct 14, 2015

@imyller
Thank you for your advice.

Indeed, I only get visual studio 2012 installed which doesn't meet the building requirements

@fivdi
Copy link
Contributor

fivdi commented Oct 14, 2015

@alexcroox It looks like Raspbian Wheezy is installed on the Pi. If so, this should help: https://github.com/fivdi/onoff/wiki/Node.js-v4-and-native-addons

@alexcroox
Copy link

Built using these instructions and everything is working great thank you :)

http://andyfelong.com/2015/09/node-js-v4-1-0-on-raspberry-pi-2/

@andresg747
Copy link

Hi,

I'm new at this but i'm trying to get pass to the proccess of "building serialport" to use it with johnny-five.

I keep getting this error and tried everything. Installed python 2.7, set the env. variable. I have Visual Studio 2013, etc.

Error log:

serialport@1.7.4 install C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
node-pre-gyp install --fallback-to-build

C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js" clean ) else (node clean )

C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js" configure --fallback-to-build "--module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node" --module_name=serialport "--module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64" ) else (node configure --fallback-to-build "--module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node" --module_name=serialport "--module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64" )

C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js" build --fallback-to-build "--module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node" --module_name=serialport "--module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64" ) else (node build --fallback-to-build "--module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node" --module_name=serialport "--module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64" )
Los proyectos de esta solución se van a compilar de uno en uno. Para habilitar la compilación en paralelo, agregue el modificador "/m".
serialport.cpp
serialport_win.cpp
enumser.cpp
..\src\win\enumser.cpp(443): warning C4996: 'GetVersionExA': was declared deprecated [C:\Users\andres garcia.WebStorm1
0\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Program Files (x86)\Windows Kits\8.1\Include\um\sysinfoapi.h(433) : see declaration of 'GetVersionExA'
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(263): error C2995: 'v8::Local _NanEnsureLocal(v8::Local)' : function template has already been defined (..\src
serialport.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\buil
d\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_module
s\nan\nan.h(256) : see declaration of '_NanEnsureLocal'
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(263): error C2995: 'v8::Local _NanEnsureLocal(v8::Local)' : function template has already been defined (..\src
serialport_win.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_module
s\nan\nan.h(256) : see declaration of '_NanEnsureLocal'
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C3083: 'smalloc': the symbol to the left of a '::' must be a type (..\src\serialport.cpp) [C:\Users\andre
s garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2039: 'FreeCallback' : is not a member of 'node' (..\src\serialport.cpp) [C:\Users\andres garcia.WebSto
rm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2061: syntax error : identifier 'FreeCallback' (..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm
10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'callback' : undeclared identifier (..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm10\AGN
odeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'hint' : undeclared identifier (..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeA
rduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object &)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &' (..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm1
0\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const v8::Localv8::Object'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be cal
led
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(672): error C2665: 'node::Buffer::New' : none of the 4 overloads could convert all the argument types (..\src\serialp
ort.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\seria
lport.vcxproj]
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(43): could be 'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,char *,size_t)'
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(31): or 'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,v8::Localv8::String,node::encoding)'
while trying to match the argument list '(v8::Isolate *, const char *, uint32_t)'
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C3083: 'smalloc': the symbol to the left of a '::' must be a type (..\src\serialport_win.cpp) [C:\Users\a
ndres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2039: 'FreeCallback' : is not a member of 'node' (..\src\serialport_win.cpp) [C:\Users\andres garcia.We
bStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(676): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object &)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &' (..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm1
0\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const v8::Localv8::Object'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be cal
led
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2061: syntax error : identifier 'FreeCallback' (..\src\serialport_win.cpp) [C:\Users\andres garcia.WebS
torm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C2039: 'Use' : is not a member of 'node::Buffer' (..\src\serialport.cpp) [C:\Users\andres garcia.WebStor
m10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'callback' : undeclared identifier (..\src\serialport_win.cpp) [C:\Users\andres garcia.WebStorm10
\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C3861: 'Use': identifier not found (..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeArdu
ino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'hint' : undeclared identifier (..\src\serialport_win.cpp) [C:\Users\andres garcia.WebStorm10\AGN
odeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object &)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &' (..\src\serialport_win.cpp) [C:\Users\andres garcia.WebSt
orm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const v8::Localv8::Object'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be cal
led
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(672): error C2665: 'node::Buffer::New' : none of the 4 overloads could convert all the argument types (..\src\serialp
ort_win.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\s
erialport.vcxproj]
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(43): could be 'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,char *,size_t)'
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(31): or 'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,v8::Localv8::String,node::encoding)'
while trying to match the argument list '(v8::Isolate *, const char *, uint32_t)'
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(676): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object &)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &' (..\src\serialport_win.cpp) [C:\Users\andres garcia.WebSt
orm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const v8::Localv8::Object'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be cal
led
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C2039: 'Use' : is not a member of 'node::Buffer' (..\src\serialport_win.cpp) [C:\Users\andres garcia.Web
Storm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C3861: 'Use': identifier not found (..\src\serialport_win.cpp) [C:\Users\andres garcia.WebStorm10\AGNode
Arduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack at emitTwo (events.js:87:13)
gyp ERR! stack at ChildProcess.emit (events.js:172:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 10.0.10240
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "build" "--fallback-to-build" "--module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node" "--module_name=serialport" "--module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64"
gyp ERR! cwd C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
gyp ERR! node -v v4.2.1
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 'node-gyp.cmd build --fallback-to-build --module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node --module_name=serialport --module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64' (1)
node-pre-gyp ERR! stack at ChildProcess. (C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\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 Windows_NT 10.0.10240
node-pre-gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\node-pre-gyp\bin\node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
node-pre-gyp ERR! node -v v4.2.1
node-pre-gyp ERR! node-pre-gyp -v v0.6.7
node-pre-gyp ERR! not ok
Failed to execute 'node-gyp.cmd build --fallback-to-build --module=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node --module_name=serialport --module_path=C:\Users\andres garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64' (1)
npm WARN optional dep failed, continuing serialport@1.7.4

Please help, any advice would be appreciated. Thanks in advance!

@MAOShea
Copy link

MAOShea commented Oct 19, 2015

Hi there.

I see that you have Windows 10 (System Windows_NT 10.0.10240) but are still
running Windows SDK 8.1 (C:\Program Files (x86)\Windows Kits\8.1\ ...).

Three things that I can think of, that I have had to do on my system:

  • install Windows SDK 10 (it's a separate download from MS), that will give
    you C:\Program Files (x86)\Windows Kits\10\
  • find the bat files delivered with VS2013 that set environment variables
    for your build environment (C:\Program Files (x86)\Microsoft Visual Studio
    12.0\VC\vcvarsall.bat) and execute that from your node.js console with the
    desired target platform parameter (check the properties of the various VS2013
    [platform] Cross Tools Command Prompt
    shortcuts in C:\Program Files
    (x86)\Microsoft Visual Studio 12.0\Common7\Tools\Shortcuts for examples of
    the value of that platform parameter : x86_arm, amd64, etc)
  • add -msvs_version=2013 to your *npm build *command

Hope this helps.

Michael

On Mon, Oct 19, 2015 at 2:12 AM, andresg747 notifications@github.com
wrote:

Hi,

I'm new at this but i'm trying to get pass to the proccess of "building
serialport" to use it with johnny-five.

I keep getting this error and tried everything. Installed python 2.7, set
the env. variable. I have Visual Studio 2013, etc.

Error log:

serialport@1.7.4 install C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
node-pre-gyp install --fallback-to-build

C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport>if
not defined npm_config_node_gyp (node "C:\Program
Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js"
clean ) else (node clean )

C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport>if
not defined npm_config_node_gyp (node "C:\Program
Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js"
configure --fallback-to-build "--module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node"
--module_name=serialport "--module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64"
) else (node configure --fallback-to-build "--module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node"
--module_name=serialport "--module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64"
)

C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport>if
not defined npm_config_node_gyp (node "C:\Program
Files\nodejs\node_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js"
build --fallback-to-build "--module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node"
--module_name=serialport "--module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64"
) else (node build --fallback-to-build "--module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node"
--module_name=serialport "--module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64"
)
Los proyectos de esta solución se van a compilar de uno en uno. Para
habilitar la compilación en paralelo, agregue el modificador "/m".
serialport.cpp
serialport_win.cpp
enumser.cpp
..\src\win\enumser.cpp(443): warning C4996: 'GetVersionExA': was declared
deprecated [C:\Users\andres garcia.WebStorm1

0\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Program Files (x86)\Windows Kits\8.1\Include\um\sysinfoapi.h(433) : see
declaration of 'GetVersionExA'
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(263): error C2995: 'v8::Local _NanEnsureLocal(v8::Local)' : function
template has already been defined (..\src
serialport.cpp) [C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\buil
d\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_module
s\nan\nan.h(256) : see declaration of '_NanEnsureLocal'
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(263): error C2995: 'v8::Local _NanEnsureLocal(v8::Local)' : function
template has already been defined (..\src
serialport_win.cpp) [C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_module
s\nan\nan.h(256) : see declaration of '_NanEnsureLocal'
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C3083: 'smalloc': the symbol to the left of a '::' must be a
type (..\src\serialport.cpp) [C:\Users\andre
s
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2039: 'FreeCallback' : is not a member of 'node'
(..\src\serialport.cpp) [C:\Users\andres garcia.WebSto

rm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2061: syntax error : identifier 'FreeCallback'
(..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm

10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'callback' : undeclared identifier
(..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm10\AGN

odeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'hint' : undeclared identifier
(..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm10\AGNodeA

rduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object
&)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &'
(..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm1

0\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const
v8::Localv8::Object'
No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be cal
led
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(672): error C2665: 'node::Buffer::New' : none of the 4 overloads could
convert all the argument types (..\src\serialp
ort.cpp) [C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\seria
lport.vcxproj]
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(43):
could be 'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,char *,size_t)'
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(31): or
'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,v8::Localv8::String,node::encoding)'
while trying to match the argument list '(v8::Isolate *, const char *,
uint32_t)'
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C3083: 'smalloc': the symbol to the left of a '::' must be a
type (..\src\serialport_win.cpp) [C:\Users\a
ndres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2039: 'FreeCallback' : is not a member of 'node'
(..\src\serialport_win.cpp) [C:\Users\andres garcia.We

bStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(676): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object
&)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &'
(..\src\serialport.cpp) [C:\Users\andres garcia.WebStorm1

0\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const
v8::Localv8::Object'
No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be cal
led
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(661): error C2061: syntax error : identifier 'FreeCallback'
(..\src\serialport_win.cpp) [C:\Users\andres garcia.WebS

torm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C2039: 'Use' : is not a member of 'node::Buffer'
(..\src\serialport.cpp) [C:\Users\andres garcia.WebStor

m10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'callback' : undeclared identifier
(..\src\serialport_win.cpp) [C:\Users\andres garcia.WebStorm10

\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C3861: 'Use': identifier not found (..\src\serialport.cpp)
[C:\Users\andres garcia.WebStorm10\AGNodeArdu

ino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2065: 'hint' : undeclared identifier
(..\src\serialport_win.cpp) [C:\Users\andres garcia.WebStorm10\AGN

odeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(665): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object
&)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &'
(..\src\serialport_win.cpp) [C:\Users\andres garcia.WebSt

orm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const
v8::Localv8::Object'
No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be cal
led
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(672): error C2665: 'node::Buffer::New' : none of the 4 overloads could
convert all the argument types (..\src\serialp
ort_win.cpp) [C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\s
erialport.vcxproj]
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(43):
could be 'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,char *,size_t)'
C:\Users\andres garcia.node-gyp\4.2.1\include\node\node_buffer.h(31): or
'v8::MaybeLocalv8::Object n
ode::Buffer::New(v8::Isolate *,v8::Localv8::String,node::encoding)'
while trying to match the argument list '(v8::Isolate *, const char *,
uint32_t)'
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(676): error C2664: 'v8::Localv8::Object::Local(const v8::Localv8::Object
&)' : cannot convert argument 1 from 'v8
::MaybeLocalv8::Object' to 'const v8::Localv8::Object &'
(..\src\serialport_win.cpp) [C:\Users\andres garcia.WebSt

orm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
Reason: cannot convert from 'v8::MaybeLocalv8::Object' to 'const
v8::Localv8::Object'
No user-defined-conversion operator available that can perform this
conversion, or the operator cannot be cal
led
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C2039: 'Use' : is not a member of 'node::Buffer'
(..\src\serialport_win.cpp) [C:\Users\andres garcia.Web

Storm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.
h(683): error C3861: 'Use': identifier not found
(..\src\serialport_win.cpp) [C:\Users\andres garcia.WebStorm10\AGNode

Arduino\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe
failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Program
Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack at emitTwo (events.js:87:13)
gyp ERR! stack at ChildProcess.emit (events.js:172:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit
(internal/child_process.js:200:12)
gyp ERR! System Windows_NT 10.0.10240
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program
Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js"
"build" "--fallback-to-build" "--module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node"
"--module_name=serialport" "--module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64"
gyp ERR! cwd C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
gyp ERR! node -v v4.2.1
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 'node-gyp.cmd build
--fallback-to-build --module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node
--module_name=serialport --module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64'
(1)
node-pre-gyp ERR! stack at ChildProcess. (C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\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 Windows_NT 10.0.10240
node-pre-gyp ERR! command "C:\Program Files\nodejs\node.exe"
"C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\node_modules\node-pre-gyp\bin\node-pre-gyp"
"install" "--fallback-to-build"
node-pre-gyp ERR! cwd C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport
node-pre-gyp ERR! node -v v4.2.1
node-pre-gyp ERR! node-pre-gyp -v v0.6.7
node-pre-gyp ERR! not ok
Failed to execute 'node-gyp.cmd build --fallback-to-build
--module=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64\serialport.node
--module_name=serialport --module_path=C:\Users\andres
garcia.WebStorm10\AGNodeArduino\node_modules\johnny-five\node_modules\serialport\build\serialport\v1.7.4\Release\node-v46-win32-x64'
(1)
npm WARN optional dep failed, continuing serialport@1.7.4

Please help, any advice would be appreciated. Thanks in advance!


Reply to this email directly or view it on GitHub
#578 (comment)
.

@gnail
Copy link

gnail commented Oct 19, 2015

I've just tried serialport@2.0.1 with node 4.2.1 and I'm still seeing the same symptom as my previous comment (#578 (comment))

@tigoe
Copy link
Contributor

tigoe commented Oct 20, 2015

Here's my latest, trying this on Windows 10:

I tried under Windows 10. At first I tried using the GitHub Shell that comes with the GitHub GUI client for Windows. I couldn’t ever get it to build there, so I closed that and just opened Windows PowerShell. In powershell, I changed into a directory for a project I was working on (https://github.com/vanevery/p5.serialport), and did this:

git install serialport—msgs_version=2015

Some warnings popped up, but it compiled OK.

Then I ran the server script for that project (it's a serial-to-websocket server for p5.js):

node startserver

And opened the echo2 example in PR#15 of p5.serialport. I had loaded up echo.ino.ino on the Arduino already. Changed the portName appropriately (COM4 for me) and ran it. It crashed after about 18, 19 reads pretty consistently.

Then I loaded up my own node serial examples (https://github.com/tigoe/NodeExamples). Installed like so:

npm install 

Note: no msds_ver flag. It worked fine, after the same warnings as above.

Ran SerialIn.js with analogReadSerial example from Arduino Examples -> Basics folder. Converted Arduino output to binary (using .write()) and tried it with SerialInBinary as well. In both cases, the script stopped running after 400-600 bytes received.

No idea why yet, but I can repeat it pretty consistently with the steps above.

@jacobrosenthal
Copy link
Contributor Author

Closing this as it was merged for 2.0.0. Looks like mainly whats left is windows issues, which well track on separate issues

@torgeir
Copy link

torgeir commented Nov 7, 2015

@jacobrosenthal I also got this working in the end, following the same advice as @alexcroox. This was on an nvm-installed node 4.2.2 on the RPI2 (Raspbian GNU/Linux 7 (wheezy))

Steps taken: https://gist.github.com/torgeir/89ec54bbc6cf80d8bff4

@rynomad
Copy link

rynomad commented Nov 25, 2015

For anyone wondering, I can confirm that git://github.com/ghostoy/node-serialport.git#nan1to2 is working swimmingly on 4.2.2 installed via nvm on a BeagleBoneBlack RevC with a fresh headless install of Debian 8.2 (Jessie). for anyone reading this on a minimal install remember to sudo apt-get git build-essential python

Well done and thank you. log for posterity:

npm WARN installMany node-pre-gyp was bundled with serialport@1.7.4, but bundled package wasn't found in unpacked tree
-
> serialport@1.7.4 install /home/debian/test/node_modules/serialport
> node-pre-gyp install --fallback-to-build

make: Entering directory '/home/debian/test/node_modules/serialport/build'
  CXX(target) Release/obj.target/serialport/src/serialport.o
  CXX(target) Release/obj.target/serialport/src/serialport_unix.o
  CXX(target) Release/obj.target/serialport/src/serialport_poller.o
  SOLINK_MODULE(target) Release/obj.target/serialport.node
  COPY Release/serialport.node
  COPY /home/debian/test/node_modules/serialport/build/serialport/v1.7.4/Release/node-v46-linux-arm/serialport.node
  TOUCH Release/obj.target/action_after_build.stamp
make: Leaving directory '/home/debian/test/node_modules/serialport/build'
serialport@1.7.4 node_modules/serialport
├── bindings@1.2.1
├── async@0.9.0
├── sf@0.1.7
├── debug@2.2.0 (ms@0.7.1)
├── nan@2.0.9
├── optimist@0.6.1 (wordwrap@0.0.3, minimist@0.0.10)
└── node-pre-gyp@0.6.17
debian@beaglebone:~/test$ cat /etc/*-release
PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
NAME="Debian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="https://bugs.debian.org/"
debian@beaglebone:~/test$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/arm-linux-gnueabihf/4.9/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: ../src/configure -v --with-pkgversion='Debian 4.9.2-10' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.9 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libitm --disable-libquadmath --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-armhf/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-armhf --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-armhf --with-arch-directory=arm --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-sjlj-exceptions --with-arch=armv7-a --with-fpu=vfpv3-d16 --with-float=hard --with-mode=thumb --enable-checking=release --build=arm-linux-gnueabihf --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf
Thread model: posix
gcc version 4.9.2 (Debian 4.9.2-10) 

@lock lock bot locked as resolved and limited conversation to collaborators May 6, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests