Code Monkey home page Code Monkey logo

node-red-contrib-espeak's Introduction

node-red-contrib-espeak

Node-RED node for espeak

espeak is English text to speech system. Using this node, Raspberry Pi can play voice on Node-RED.

Raspbian, Ubuntu and macOS are supported in this node.

Install

Run the following command in your Node-RED user directory - typically ~/.node-red

    npm install node-red-contrib-espeak

node-red-contrib-espeak's People

Contributors

zuhitocom avatar phssakaigawa avatar zuhito avatar

Watchers

James Cloos avatar  avatar

node-red-contrib-espeak's Issues

install fails with a E404 - install from GIt fails with ELIFECYCLE

Device: Rpi 2 Model B (2014)
OS: Raspbian Stretch v9
Node-RED: v1.1.3
Node.js: v12.19.0
Npm: v6.14.8

I'm not able to install the node. If I try with npm install node-red-contrib-espeak it fails with an E404. If I try from git, it fails with a ELIFECYCLE

Here is the log for the NPM install:

pi@skull:~/.node-red $ npm install node-red-contrib-espeak
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/node-red-contrib-espeak - Not found
npm ERR! 404 
npm ERR! 404  'node-red-contrib-espeak@latest' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pi/.npm/_logs/2020-10-11T10_12_58_301Z-debug.log
pi@skull:~/.node-red $ 

I then tried to install from git using:
npm install phssakaigawa/node-red-contrib-espeak
and it failed again:

pi@skull:~/.node-red $ npm install phssakaigawa/node-red-contrib-espeak

> [email protected] preinstall /home/pi/.node-red/node_modules/node-espeak
> rm -Rf deps/espeak; git clone --branch 1.48.15 https://github.com/rhdunn/espeak.git deps/espeak

Cloning into 'deps/espeak'...
remote: Enumerating objects: 40961, done.
remote: Total 40961 (delta 0), reused 0 (delta 0), pack-reused 40961
Receiving objects: 100% (40961/40961), 48.69 MiB | 4.25 MiB/s, done.
Resolving deltas: 100% (28264/28264), done.
Note: checking out 'c48bb4cd34874a08ee3e6bda13759c6335ad665f'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>


> [email protected] install /home/pi/.node-red/node_modules/node-espeak
> node-gyp rebuild

make: Entering directory '/home/pi/.node-red/node_modules/node-espeak/build'
  CXX(target) Release/obj.target/espeak/deps/espeak/src/fifo.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/speak.o
../deps/espeak/src/speak.cpp: In function ‘void DisplayVoices(FILE*, char*)’:
../deps/espeak/src/speak.cpp:213:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(j=0; j < sizeof(buf); j++)
              ~~^~~~~~~~~
../deps/espeak/src/speak.cpp: In function ‘int main(int, char**)’:
../deps/espeak/src/speak.cpp:776:4: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~
../deps/espeak/src/speak.cpp:778:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘else’
     if(phonemes_separator == 'z')
     ^~
../deps/espeak/src/speak.cpp:786:4: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~
../deps/espeak/src/speak.cpp:788:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘else’
     if(phonemes_separator == 'z')
     ^~
  CXX(target) Release/obj.target/espeak/deps/espeak/src/synth_mbrola.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/compiledict.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/espeak.o
../deps/espeak/src/espeak.cpp: In function ‘void DisplayVoices(FILE*, char*)’:
../deps/espeak/src/espeak.cpp:212:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(j=0; j < sizeof(buf); j++)
              ~~^~~~~~~~~
../deps/espeak/src/espeak.cpp: In function ‘int main(int, char**)’:
../deps/espeak/src/espeak.cpp:691:4: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~
../deps/espeak/src/espeak.cpp:693:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘else’
     if(phonemes_separator == 'z')
     ^~
../deps/espeak/src/espeak.cpp:701:4: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation]
    else
    ^~~~
../deps/espeak/src/espeak.cpp:703:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘else’
     if(phonemes_separator == 'z')
     ^~
  CXX(target) Release/obj.target/espeak/deps/espeak/src/mbrowrap.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/readclause.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/speak_lib.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/translate.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/wave_pulse.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/debug.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/phonemelist.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/setlengths.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/voices.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/wave_sada.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/event.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/intonation.o
../deps/espeak/src/intonation.cpp: In function ‘void CalcPitches(Translator*, int)’:
../deps/espeak/src/intonation.cpp:1118:7: warning: variable ‘group_tone_emph’ set but not used [-Wunused-but-set-variable]
  int  group_tone_emph;
       ^~~~~~~~~~~~~~~
  CXX(target) Release/obj.target/espeak/deps/espeak/src/synthdata.o
../deps/espeak/src/synthdata.cpp: In function ‘int LoadPhData(int*)’:
../deps/espeak/src/synthdata.cpp:169:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
     if(srate != NULL)
     ^~
../deps/espeak/src/synthdata.cpp:171:2: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
  return(result);
  ^~~~~~
  CXX(target) Release/obj.target/espeak/deps/espeak/src/dictionary.o
../deps/espeak/src/dictionary.cpp: In function ‘void SetWordStress(Translator*, char*, unsigned int*, int, int)’:
../deps/espeak/src/dictionary.cpp:1219:6: warning: variable ‘post_tonic’ set but not used [-Wunused-but-set-variable]
  int post_tonic;   // currently not used
      ^~~~~~~~~~
  CXX(target) Release/obj.target/espeak/deps/espeak/src/klatt.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/numbers.o
../deps/espeak/src/numbers.cpp: In function ‘int LookupThousands(Translator*, int, int, int, char*)’:
../deps/espeak/src/numbers.cpp:1359:7: warning: suggest parentheses around operand of ‘!’ or change ‘&’ to ‘&&’ or ‘!’ to ‘~’ [-Wparentheses]
    if(!found_value & (number_control & 1))
       ^~~~~~~~~~~~
  CXX(target) Release/obj.target/espeak/deps/espeak/src/sonic.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/synthesize.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/tr_languages.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/wave.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/espeak_command.o
  CXX(target) Release/obj.target/espeak/deps/espeak/src/wavegen.o
../deps/espeak/src/wavegen.cpp: In function ‘int WavegenFill(int)’:
../deps/espeak/src/wavegen.cpp:2052:17: warning: variable ‘p_start’ set but not used [-Wunused-but-set-variable]
  unsigned char *p_start;
                 ^~~~~~~
  AR(target) Release/obj.target/deps/espeak.a
  COPY Release/espeak.a
  CXX(target) Release/obj.target/node-espeak/src/node-espeak.o
../src/node-espeak.cc:22:25: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
 static char *language = "en\0";
                         ^~~~~~
../src/node-espeak.cc: In function ‘int SynthCallback(short int*, int, espeak_EVENT*)’:
../src/node-espeak.cc:39:29: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
    callback->Call(argc, argv);
                             ^
In file included from ../src/node-espeak.cc:1:0:
../../nan/nan.h:1742:3: note: declared here
   Call(int argc, v8::Local<v8::Value> argv[]) const {
   ^~~~
../src/node-espeak.cc: In function ‘void GetVoice(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:57:82: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 j->Set(Nan::New("gender").ToLocalChecked(), Nan::New("none").ToLocalChecked());
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:60:82: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 j->Set(Nan::New("gender").ToLocalChecked(), Nan::New("male").ToLocalChecked());
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:63:84: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 >Set(Nan::New("gender").ToLocalChecked(), Nan::New("female").ToLocalChecked());
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:65:66: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
  obj->Set(Nan::New("variant").ToLocalChecked(), Nan::New(variant));
                                                                  ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:66:58: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
  obj->Set(Nan::New("age").ToLocalChecked(), Nan::New(age));
                                                          ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:67:98: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 language").ToLocalChecked(), Nan::New(std::string(language)).ToLocalChecked());
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc: In function ‘void GetProperties(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:73:92: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 :New("pitch").ToLocalChecked(), Nan::New(espeak_GetParameter(espeakPITCH, 1)));
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:74:90: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 n::New("rate").ToLocalChecked(), Nan::New(espeak_GetParameter(espeakRATE, 1)));
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:75:94: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 ew("volume").ToLocalChecked(), Nan::New(espeak_GetParameter(espeakVOLUME, 1)));
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:76:92: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 :New("gap").ToLocalChecked(), Nan::New(espeak_GetParameter(espeakWORDGAP, 1)));
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc:77:92: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 :New("range").ToLocalChecked(), Nan::New(espeak_GetParameter(espeakRANGE, 1)));
                                                                              ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/v8-internal.h:14:0,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:27,
                 from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:3499:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/pi/.cache/node-gyp/12.19.0/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/node-espeak.cc: In function ‘void SetGender(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:82:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetAge(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:88:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetVariant(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:94:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetRate(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:100:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetVolume(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:110:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetPitch(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:120:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetRange(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:130:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: In function ‘void SetGap(const Nan::FunctionCallbackInfo<v8::Value>&)’:
../src/node-espeak.cc:140:36: error: no matching function for call to ‘v8::Value::NumberValue()’
  double num = info[0]->NumberValue();
                                    ^
In file included from /home/pi/.cache/node-gyp/12.19.0/include/node/node.h:67:0,
                 from ../../nan/nan.h:56,
                 from ../src/node-espeak.cc:1:
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note: candidate: v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/home/pi/.cache/node-gyp/12.19.0/include/node/v8.h:2704:39: note:   candidate expects 1 argument, 0 provided
../src/node-espeak.cc: At global scope:
../src/node-espeak.cc:191:24: error: variable or field ‘InitESpeak’ declared void
 static void InitESpeak(Handle<Object> exports) {
                        ^~~~~~
../src/node-espeak.cc:191:24: error: ‘Handle’ was not declared in this scope
../src/node-espeak.cc:191:37: error: expected primary-expression before ‘>’ token
 static void InitESpeak(Handle<Object> exports) {
                                     ^
../src/node-espeak.cc:191:39: error: ‘exports’ was not declared in this scope
 static void InitESpeak(Handle<Object> exports) {
                                       ^~~~~~~
In file included from ../../nan/nan.h:56:0,
                 from ../src/node-espeak.cc:1:
../src/node-espeak.cc:213:26: error: ‘InitESpeak’ was not declared in this scope
 NODE_MODULE(node_espeak, InitESpeak);
                          ^
/home/pi/.cache/node-gyp/12.19.0/include/node/node.h:727:36: note: in definition of macro ‘NODE_MODULE_X’
       (node::addon_register_func) (regfunc),                          \
                                    ^~~~~~~
../src/node-espeak.cc:213:1: note: in expansion of macro ‘NODE_MODULE’
 NODE_MODULE(node_espeak, InitESpeak);
 ^~~~~~~~~~~
../src/node-espeak.cc:187:13: warning: ‘void Cancel(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void Cancel(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~
../src/node-espeak.cc:182:13: warning: ‘void OnVoice(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void OnVoice(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~
../src/node-espeak.cc:170:13: warning: ‘void Speak(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void Speak(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~
../src/node-espeak.cc:156:13: warning: ‘void Initialize(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void Initialize(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~~~
../src/node-espeak.cc:149:13: warning: ‘void SetLanguage(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetLanguage(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~~~~
../src/node-espeak.cc:139:13: warning: ‘void SetGap(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetGap(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~
../src/node-espeak.cc:129:13: warning: ‘void SetRange(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetRange(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~
../src/node-espeak.cc:119:13: warning: ‘void SetPitch(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetPitch(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~
../src/node-espeak.cc:109:13: warning: ‘void SetVolume(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetVolume(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~~
../src/node-espeak.cc:99:13: warning: ‘void SetRate(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetRate(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~
../src/node-espeak.cc:93:13: warning: ‘void SetVariant(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetVariant(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~~~
../src/node-espeak.cc:87:13: warning: ‘void SetAge(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetAge(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~
../src/node-espeak.cc:81:13: warning: ‘void SetGender(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void SetGender(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~~
../src/node-espeak.cc:71:13: warning: ‘void GetProperties(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void GetProperties(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~~~~~~
../src/node-espeak.cc:54:13: warning: ‘void GetVoice(const Nan::FunctionCallbackInfo<v8::Value>&)’ defined but not used [-Wunused-function]
 static void GetVoice(const Nan::FunctionCallbackInfo<v8::Value>& info) {
             ^~~~~~~~
node-espeak.target.mk:118: recipe for target 'Release/obj.target/node-espeak/src/node-espeak.o' failed
make: *** [Release/obj.target/node-espeak/src/node-espeak.o] Error 1
make: Leaving directory '/home/pi/.node-red/node_modules/node-espeak/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:314:20)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
gyp ERR! System Linux 4.9.59-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/pi/.node-red/node_modules/node-espeak
gyp ERR! node -v v12.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
npm WARN [email protected] No repository field.
npm WARN [email protected] No license field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pi/.npm/_logs/2020-10-11T10_20_51_887Z-debug.log
pi@skull:~/.node-red $ 

Recommend Projects

  • React photo React

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

  • Vue.js photo Vue.js

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

  • Typescript photo Typescript

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

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

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

Recommend Topics

  • javascript

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

  • web

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

  • server

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

  • Machine learning

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

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

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

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.