serialport / node-serialport

Access serial ports with JavaScript. Linux, OSX and Windows. Welcome your robotic JavaScript overlords. Better yet, program them!
https://serialport.io
MIT License
5.79k stars 1.01k forks source link

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

Closed jacobrosenthal closed 8 years ago

jacobrosenthal commented 9 years ago

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 https://github.com/nodejs/hardware/issues/13 ) but we're not there yet.

fivdi commented 8 years ago

@Jackbennett were you able to talk to some type of device with Node v4.1.1 and serialport after the successful install?

tigoe commented 8 years ago

@Jackbennett's post gave me hope, so I uninstalled node.js and Visual Studio, then reinstalled them, and I was finally able to get it to compile, #566 Then I ran a few serial tests with an Arduino. Working fine so far, I've gotten serial data going both directions at 9600bps.

Testing conditions:

I'll do a run at 115200, to make sure it works at top speed.

tigoe commented 8 years ago

Running the ArduinoEcho sketch with a simplified version of stress.js (without the dependencies) at 115200, I find it always stops running at 852 bytes on Windows. Not sure why, but it's consistent. I'll try to submit a pull request with my version of the stress test.

mgcrea commented 8 years ago

@tigoe That's good news. I think we should not wait too much feedback before bumping a new major, as old setup will still work on the current major (thanks semver), and a lot of new feedback will arrive once there is an official tag out there, after what, releasing a couple of patch versions to address theses new issues should not be problematic.

Thanks! Serialport is one of the last pre-4.0 deps that are holding our team back, we're pretty excited to finally move forward.

fivdi commented 8 years ago

as old setup will still work on the current major (thanks semver)

@mgcrea could you elaborate a little on this statement please? Are you suggesting that serialport v1.7.4 will work on Node.js v4.1.1? If so, this is not the case.

fivdi commented 8 years ago

@gnail I don't have a Windows machine or a USB null modem cable but attempted to simulate the issue you're having with a Raspberry Pi 2 and an ATmega328P. Although the parser in the minimal test case is quite synthetic in that it simply outputs 10000 lines to the console every time it's passed a buffer of data, it still looks like it should work. The test ran successfully many times without error. This is the code that was used on the Raspberry Pi 2 and this is the code that was used on the ATmega328P.

mgcrea commented 8 years ago

@fivdi I was just saying that any existing working (thus pre node-v4) setup requiring serialport@^1.7 would not be broken by a new major release (as long as they don't link against latest or *).

Major releases are meant to break things so while I think it's good to check that things are not completly broken on any platforms, delaying a working release by weeks to iron some platform-specific bugs would not be the best thing to do.

gnail commented 8 years ago

@fivdi Thanks for running my test case on the Raspi. Seems like it might be a Windows-specific issue then? FYI a USB null-modem cable is nothing more than two FTDI cables wired back to back (TX->RX). I encountered this problem on a real project that I'm working on. I'm receiving binary data from a device and my parser basically concatenates the buffers and once it has seen a complete packet it sends the buffer off to the packet parser via an event. So once in a while, the parser function can execute for much longer than normal and node 4.0/4.1 crashes at that point. I'm using node 0.12.7 for the project and it runs fine there but I do want to eventually upgrade to 4.x so that I can use a more recent version of Electron. IMO it shouldn't be possible to crash node/native modules no matter what we do in JS.

EDIT: clarification

@mgcrea There's no breaking node-serial API changes or additional functionalities with this change so why would this be a major release? (see semver FAQ#What should I do if I update my own dependencies without changing the public API?) There's a difference between releasing a major release with breaking changes to the API, and releasing a version with updated dependencies and known regressions.

mgcrea commented 8 years ago

@gnail, IIRC nan@^2.0 does break some backward compatibility with several older versions of NodeJS, hence the suggestion to bump a major, but any release will do.

fivdi commented 8 years ago

I was just saying that any existing working (thus pre node-v4) setup requiring serialport@^1.7 would not be broken by a new major release (as long as they don't link against latest or *).

Major releases are meant to break things so while I think it's good to check that things are not completly broken on any platforms, delaying a working release by weeks to iron some platform-specific bugs would not be the best thing to do.

@mgcrea agreed. AFAIK the plan is a new major release.

IIRC nan@^2.0 does break some backward compatibility with several older versions of NodeJS

@mgcrea AFAIK it's built to function with Node.js >= 0.8 and any version of io.js without breaking backwards compatibility.

fivdi commented 8 years ago

I encountered this problem on a real project that I'm working on. I'm receiving binary data from a device and my parser basically concatenates the buffers and once it has seen a complete packet it sends the buffer off to the packet parser via an event. So once in a while, the parser function can execute for much longer than normal and node crashes at that point. I'm using node 0.12.7 for the project

@gnail This means that you have the issue with Node.js 0.12.7 also and not only with Node.js 4, correct?

Jackbennett commented 8 years ago

@fivdi Yes I got my project driving some motors through an Arduino Uno with Firmata.

I've been trying to find some combination of MSBuild tools and windows SDK to let me complile serialport. No luck. getting 8GB of VS is frustrating.

gnail commented 8 years ago

@fivdi no, as I've said in the original report this does not happen with node 0.12.x or with io.js 2.5.0. I stumbled upon this when I tried running my project with node 4.0 then 4.1 (happens on both)

jacobrosenthal commented 8 years ago

Updated above with the 2 windows tests that need reproduction and fixing, and again confirming that it does not appear this will be a major version bump.

leinonen commented 8 years ago

I tried: #566 -> npm install "git://github.com/ghostoy/node-serialport.git#nan1to2" Works great on my ubuntu machine with nodejs v4.1.1 ! Thanks!

rwaldron commented 8 years ago

@cpustar

when used with johnny-five - any request crashes the server, though strangely it works when no reqs are made.

Can you be more specific? Requests to what server?

jaymes-bearden commented 8 years ago

Using: OS: Windows 7 Node: 4.1.1 johnny-five@0.8.95 msvs_version: 2015 (VS Community)

After executing npm install "git://github.com/ghostoy/node-serialport.git#nan1to2" in my project folder, followed by npm install johnny-five --save-dev, I was able to continue!

Before this, I had VS compile errors: e:...\node_modules\johnny-five\node_modules\serialport\node_modules\nan\nan.h(263): error C2995: 'v8::Local _NanEnsureLocal(v8::Local)': function template has al ready been defined (compiling source file ..\src\serialport.cpp) [e:...\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]

e:...\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 arg ument types (compiling source file ..\src\serialport.cpp) [e:...\node_modules\johnny-five\node_modules\serialport\build\serialport.vcxproj]

etc etc

Thanks guys!

fivdi commented 8 years ago

@Jackbennett @gnail @leinonen @jaymes-bearden Thanks for the feedback.

@cpustar Do you have a minimal test case that can be used to reproduce the error?

protozoo commented 8 years ago

Not sure if this is the right thread for this, but I'm trying to get serialport (with or without johnny-five) working in Electron with no success. I tried installing as @jaymes-bearden said:

npm install "git://github.com/ghostoy/node-serialport.git#nan1to2"
npm install johnny-five --save-dev

But when I try to use johnny-five like this:

var five = require("johnny-five");
var board = new five.Board();

or serialport like this:

var SerialPort = require("serialport").SerialPort;

within Electron, I get this error:

Uncaught Error: Cannot find module '{PATH_TO_PROJECT}/node_modules/serialport/build/serialport/v1.7.4/Release/node-v46-darwin-x64/serialport.node'(…)

I am on a Mac OSX 10.10.1. Within Electron, process.versions yields this:

ares: "1.10.1-DEV"
atom-shell: "0.33.3"
chrome: "45.0.2454.85"
electron: "0.33.3"
http_parser: "2.5.0"
modules: "46"
node: "4.1.1"
openssl: "1.0.2d"
uv: "1.7.4"
v8: "4.5.103.29"
zlib: "1.2.8"

Outside Electron but same project, running the same scripts work (node 0.12.7).

Any idea on how to get this working?

Many thanks

shaunEll commented 8 years ago

@fivdi I'm facing the same issue.

Usage: A simple express http server and serialport receiving data constantly. As cpustar mentioned, any http request crashes node.

shaunEll commented 8 years ago

It appears with both johnny-five and vanilla serialport for me. (Win10x64, node 4.1.1 #556 pr)

jacobrosenthal commented 8 years ago

@protozoo It is not, a separate issue or try the gitter, but understand basically everyone is spending their time getting node 4 to release atm

@torgeir said he couldn't build on pi 2, but I just was successful with #566 with node 4.1.1 and a jessie image

However, I also had a pi 2 updated manually to jessie so I happened to test that quick, and it does fail to build #566 node 4.1.1 with https://gist.github.com/jacobrosenthal/8c733f4f794a964c56d8

protozoo commented 8 years ago

Ok @jacobrosenthal, thanks

fivdi commented 8 years ago

@cpustar Is there something missing in the sequence of steps required to reproduce the error? I don't know a lot about express and can't see anything in the generated app that would result in route.js being used at any point. I gave it a try to see. The express app functioned as expected, it was possible to navigate to http://localhost:3000 many times, and route,js wasn't used. Starting route.js as a separate process didn't change anything.

fivdi commented 8 years ago

However, I also had a pi 2 updated manually to jessie so I happened to test that quick, and it does fail to build #566 node 4.1.1 with https://gist.github.com/jacobrosenthal/8c733f4f794a964c56d8

@jacobrosenthal It looks like g++ 4.9 isn't installed, what's the output of g++ --version?

It works fine for me on Jessie

pi@raspberrypi ~/dev/pr-566 $ npm install "git://github.com/ghostoy/node-serialport.git#nan1to2"
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/pi/dev/pr-566/node_modules/serialport
> node-pre-gyp install --fallback-to-build

make: Entering directory '/home/pi/dev/pr-566/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/pr-566/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/pi/dev/pr-566/node_modules/serialport/build'
serialport@1.7.4 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)
└── node-pre-gyp@0.6.11
pi@raspberrypi ~/dev/pr-566 $ 
fivdi commented 8 years ago

@jacobrosenthal check to see if it's really Jessie with some of the following command:

pi@raspberrypi ~ $ cat /etc/debian_version 
8.0

pi@raspberrypi ~ $ cat /etc/issue
Raspbian GNU/Linux 8 \n \l

pi@raspberrypi ~ $ lsb_release -da
No LSB modules are available.
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 8.0 (jessie)
Release:    8.0
Codename:   jessie

7 means Wheezy, 8 means Jessie

jacobrosenthal commented 8 years ago

By 'manually updated' to jessie I meant the the sources list, so yeah, no g++ 4.9 makes total sense. Were going to see a lot of that.

fivdi commented 8 years ago

@cpustar the updated example works fine for me on Ubuntu with Node.js v4.1.1 and #566. I don't use Windows.

Can you post the complete output of the process to a gist? Maybe someone will see what the problem is.

What's the output of node -v?

rwaldron commented 8 years ago

@jacobrosenthal @fivdi I've been following testing progress, but I feel like I keep getting turned around—any summary on the remaining issues? Anything I can help with (not windows)

jacobrosenthal commented 8 years ago

@rwaldron let me know if theres some better way than to keep updating the original ticket at the top of this issue, which holds the extent of my knowledge. IE

Chris is looking at the appveyor and travis. Weve got 2 windows bugs.

One thing I havent updated above is that its now clear we're going to break raspberry pi wheezy users (ie all of them) so despite arguments above, I think we are back to a major release.

On Mon, Oct 5, 2015 at 7:49 PM, Rick Waldron notifications@github.com wrote:

@jacobrosenthal https://github.com/jacobrosenthal @fivdi https://github.com/fivdi I've been following testing progress, but I feel like I keep getting turned around—any summary on the remaining issues? Anything I can help with (not windows)

— Reply to this email directly or view it on GitHub https://github.com/voodootikigod/node-serialport/issues/578#issuecomment-145611947 .

rwaldron commented 8 years ago

let me know if theres some better way than to keep updating the original ticket at the top of this issue,

Ah! I didn't even realize that. We all get updates for new comments in the thread, but not for when you update the original post. Thanks—I'll make sure to pay attention there now :)

One thing I havent updated above is that its now clear we're going to break raspberry pi wheezy users (ie all of them) so despite arguments above, I think we are back to a major release.

That makes sense.

fivdi commented 8 years ago

@rwaldron @jacobrosenthal The two issues listed in the original post are also the only ones that I'm aware of. The issue mentioned by @cpustar and @shaunEll is very likely to be a third.

@jacobrosenthal I'm not aware of any issues with Raspbian Wheezy (or Raspbian Jessie) and just gave Wheezy another quick test. Everything installed successfully and a fairly simple stress test worked fine.

Below is the output of a few commands including npm install .... These were run on stock Raspbain Wheezy 2015-05-05 with two exceptions; The optional gcc/g++ 4.8 compilers were installed and Node v4.1.1 was of course also installed.

pi@raspberrypi ~/sp-pr566 $ cat /etc/debian_version 
7.8

pi@raspberrypi ~/sp-pr566 $ cat /etc/issue
Raspbian GNU/Linux 7 \n \l

pi@raspberrypi ~/sp-pr566 $ node -v
v4.1.1

pi@raspberrypi ~/sp-pr566 $ g++ --version
g++ (Raspbian 4.8.2-21~rpi3rpi1) 4.8.2
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

pi@raspberrypi ~/sp-pr566 $ npm install "git://github.com/ghostoy/node-serialport.git#nan1to2"
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/pi/sp-pr566/node_modules/serialport
> node-pre-gyp install --fallback-to-build

make: Entering directory '/home/pi/sp-pr566/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/sp-pr566/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/pi/sp-pr566/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.12
pi@raspberrypi ~/sp-pr566 $ 

Here's one way to install gcc/g++ on Raspbian Wheezy:

Run the following commands as user pi first (the second command expects user input):

sudo apt-get update # update the system's package list
sudo apt-get install gcc-4.8 g++-4.8

Then run the following command:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50

The advantage of doing things this way is that the following commands can be used to switch between the different compiler versions if required:

sudo update-alternatives --config gcc
sudo update-alternatives --config g++
jacobrosenthal commented 8 years ago

I definitely understand its possible to install gcc 4.9, but every do we want to support every existing install that breaks as a result and coach people through it?

Another option is presenting a link to a gist or the readme with the list of commands upon failure..

On Mon, Oct 5, 2015 at 10:40 PM, Brian Cooke notifications@github.com wrote:

ate # update the system's package list sudo apt-get install gc

fivdi commented 8 years ago

It's not necessary to install 4.9, that's difficult to do. It's only necessary to install 4.8 and that's easy. I posted about Raspbian Wheezy above after reading the following:

its now clear we're going to break raspberry pi wheezy users (ie all of them)

It was unclear to me how we're going to break Wheezy users when everything functions correctly, after installing 4.8. But now I think you were saying that it's broken because 4.8 isn't installed on Wheezy out of the box.

Given that Jessie was released less that two weeks ago, most people are probably still using Wheezy, so linking to instructions is a good idea.

jacobrosenthal commented 8 years ago

Fair enough, 4.8 would mean you dont need jessie sources, right?

On Mon, Oct 5, 2015 at 11:52 PM, Brian Cooke notifications@github.com wrote:

It's not necessary to install 4.9, that's difficult to do. It's only necessary to install 4.8 and that's easy. I posted about Raspbian Wheezy above after reading the following:

its now clear we're going to break raspberry pi wheezy users (ie all of them)

It was unclear to me how we're going to break Wheezy users when everything functions correctly, after installing 4.8. But now I think you were saying that it's broken because 4.8 isn't installed on Wheezy out of the box.

Given that Jessie was released less that two weeks ago, most people are probably still using Wheezy, so linking to instructions is a good idea.

— Reply to this email directly or view it on GitHub https://github.com/voodootikigod/node-serialport/issues/578#issuecomment-145678763 .

fivdi commented 8 years ago

Correct.

kibbeling commented 8 years ago

I also had problems install node-serialport on node 4.0.0. This worked for me: npm install "git://github.com/julianduque/node-serialport.git#master" Here is some information about my os

$ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description:    Linux Mint 17.1 Rebecca
Release:    17.1
Codename:   rebecca
$ uname -r
3.16.0-30-generic
$ npm -v
3.3.6
$ node -v
v4.0.0
vicatcu commented 8 years ago

Seems to be working alright on Ubuntu 14.04 64-bit with Node 4.1.2... On Oct 10, 2015 1:51 PM, "Arne" notifications@github.com wrote:

I also had problems install node-serialport on node 4.0.0. This worked for me: npm install "git://github.com/julianduque/node-serialport.git#master" Here is some information about my os

$ lsb_release -a No LSB modules are available. Distributor ID: LinuxMint Description: Linux Mint 17.1 Rebecca Release: 17.1 Codename: rebecca

$ uname -r 3.16.0-30-generic

$ npm -v 3.3.6

$ node -v v4.0.0

— Reply to this email directly or view it on GitHub https://github.com/voodootikigod/node-serialport/issues/578#issuecomment-147112502 .

solick commented 8 years ago

Hi, tried to install the bugfix #566 which don´t produce an error but several warnings:

MAC OS X El Capitan.

2015-10-12 08:31:11.590 xcodebuild[84402:5204440] [MT] PluginLoading: Required plug-in compatibility UUID 0420B86A-AA43-4792-9ED0-6FE0F2B16A13 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/VVDocumenter-Xcode.xcplugin' not present in DVTPlugInCompatibilityUUIDs CXX(target) Release/obj.target/serialport/src/serialport.o CXX(target) Release/obj.target/serialport/src/serialport_unix.o ../src/serialport_unix.cpp:710:20: warning: comparison of array 'device.locationId' not equal to a null pointer is always true [-Wtautological-pointer-compare] if (device.locationId != NULL) {


../src/serialport_unix.cpp:713:20: warning: comparison of array 'device.vendorId' not equal to a null pointer is always true [-Wtautological-pointer-compare]
        if (device.vendorId != NULL) {
            ~~~~~~~^~~~~~~~    ~~~~
../src/serialport_unix.cpp:716:20: warning: comparison of array 'device.productId' not equal to a null pointer is always true [-Wtautological-pointer-compare]
        if (device.productId != NULL) {
            ~~~~~~~^~~~~~~~~    ~~~~
../src/serialport_unix.cpp:719:20: warning: comparison of array 'device.manufacturer' not equal to a null pointer is always true [-Wtautological-pointer-compare]
        if (device.manufacturer != NULL) {
            ~~~~~~~^~~~~~~~~~~~    ~~~~
../src/serialport_unix.cpp:722:20: warning: comparison of array 'device.serialNumber' not equal to a null pointer is always true [-Wtautological-pointer-compare]
        if (device.serialNumber != NULL) {
            ~~~~~~~^~~~~~~~~~~~    ~~~~
5 warnings generated.
  CXX(target) Release/obj.target/serialport/src/serialport_poller.o
  SOLINK_MODULE(target) Release/serialport.node
  COPY /Users/XXX/Dropbox/swdev-dropbox/nodejs/ZigBee1/node_modules/serialport/build/serialport/v1.7.4/Release/node-v46-darwin-x64/serialport.node
  TOUCH Release/obj.target/action_after_build.stamp
ZigBee-Test-Net@0.0.1 /Users/XXX/Dropbox/swdev-dropbox/nodejs/ZigBee1
`-- serialport@1.7.4  (git://github.com/ghostoy/node-serialport.git#09658dff63d12f7932ef4b06fb7aaa791d48b1de)
  +-- debug@2.2.0 
  |`-- ms@0.7.1 
  `-- node-pre-gyp@0.6.12 
noopkat commented 8 years ago

@solick good catch, I believe this is being addressed in #552

mgcrea commented 8 years ago

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

jacobrosenthal commented 8 years ago

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 https://github.com/voodootikigod/node-serialport/issues/578#issuecomment-147478349 .

voodootikigod commented 8 years ago

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 https://github.com/voodootikigod/node-serialport/issues/578#issuecomment-147478349 .

— Reply to this email directly or view it on GitHub.

fivdi commented 8 years ago

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 commented 8 years ago

amazing work to everyone who got this over the line!! :rocket:

KarbonDallas commented 8 years ago

Thank you, everyone! You're all awesome. :star:

tigoe commented 8 years ago

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

alexcroox commented 8 years ago

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 commented 8 years ago

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

imyller commented 8 years ago

@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:

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.