rizalp / gulp-sharp

Gulp plugin to resize image using sharp (libvips binding for nodejs)
MIT License
30 stars 20 forks source link

User error? Won't compile under v4.0.0 #5

Closed leehambley closed 8 years ago

leehambley commented 9 years ago

I have a feeling this isn't your problem, but it's late and I'm at a loss, maybe you could kick me in the right direction?

*[gulp][~projectstyle-guide]$ npm install --save-dev gulp-sharp
npm WARN package.json our-style-guide@0.0.0 No repository field.
npm WARN package.json our-style-guide@0.0.0 No license field.

> sharp@0.6.2 install .projectstyle-guide/node_modules/gulp-sharp/node_modules/sharp
> node-gyp rebuild

  CXX(target) Release/obj.target/sharp/src/sharp.o
In file included from ../src/sharp.cc:9:
../node_modules/nan/nan.h:324:27: error: redefinition of 'NanEnsureHandleOrPersistent'
  NAN_INLINE v8::Local<T> NanEnsureHandleOrPersistent(const v8::Local<T> &val) {
                          ^
../node_modules/nan/nan.h:319:17: note: previous definition is here
  v8::Handle<T> NanEnsureHandleOrPersistent(const v8::Handle<T> &val) {
                ^
../node_modules/nan/nan.h:344:27: error: redefinition of 'NanEnsureLocal'
  NAN_INLINE v8::Local<T> NanEnsureLocal(const v8::Handle<T> &val) {
                          ^
../node_modules/nan/nan.h:334:27: note: previous definition is here
  NAN_INLINE v8::Local<T> NanEnsureLocal(const v8::Local<T> &val) {
                          ^
../node_modules/nan/nan.h:757:13: error: no member named 'smalloc' in namespace 'node'
    , node::smalloc::FreeCallback callback
      ~~~~~~^
../node_modules/nan/nan.h:768:12: error: no matching function for call to 'New'
    return node::Buffer::New(v8::Isolate::GetCurrent(), data, size);
           ^~~~~~~~~~~~~~~~~
./.node-gyp/4.0.0/include/node/node_buffer.h:31:40: note: candidate function not viable: no known conversion from 'uint32_t' (aka 'unsigned int') to 'enum encoding' for 3rd argument
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
./.node-gyp/4.0.0/include/node/node_buffer.h:43:40: note: candidate function not viable: 2nd argument ('const char *') would lose const qualifier
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
./.node-gyp/4.0.0/include/node/node_buffer.h:28:40: note: candidate function not viable: requires 2 arguments, but 3 were provided
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate, size_t length);
                                       ^
./.node-gyp/4.0.0/include/node/node_buffer.h:36:40: note: candidate function not viable: requires 5 arguments, but 3 were provided
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
In file included from ../src/sharp.cc:9:
../node_modules/nan/nan.h:772:12: error: no viable conversion from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'
    return node::Buffer::New(v8::Isolate::GetCurrent(), size);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./.node-gyp/4.0.0/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'v8::MaybeLocal<v8::Object>' to
      'const v8::Local<v8::Object> &' for 1st argument
class Local {
      ^
./.node-gyp/4.0.0/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from 'v8::MaybeLocal<v8::Object>' to
      'v8::Local<v8::Object> &&' for 1st argument
class Local {
      ^
./.node-gyp/4.0.0/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'MaybeLocal'
  V8_INLINE Local(Local<S> that)
            ^
./.node-gyp/4.0.0/include/node/v8.h:326:13: note: candidate template ignored: could not match 'S *' against 'v8::MaybeLocal<v8::Object>'
  V8_INLINE Local(S* that)
            ^
In file included from ../src/sharp.cc:9:
../node_modules/nan/nan.h:779:26: error: no member named 'Use' in namespace 'node::Buffer'
    return node::Buffer::Use(v8::Isolate::GetCurrent(), data, size);
           ~~~~~~~~~~~~~~^
../src/sharp.cc:109:22: error: use of undeclared identifier 'VIPS_ANGLE_0'; did you mean 'VIPS_ANGLE_D0'?
  VipsAngle rotate = VIPS_ANGLE_0;
                     ^~~~~~~~~~~~
                     VIPS_ANGLE_D0
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:65:2: note: 'VIPS_ANGLE_D0' declared here
        VIPS_ANGLE_D0,
        ^
../src/sharp.cc:114:18: error: use of undeclared identifier 'VIPS_ANGLE_90'
        rotate = VIPS_ANGLE_90;
                 ^
../src/sharp.cc:116:18: error: use of undeclared identifier 'VIPS_ANGLE_180'; did you mean 'VIPS_ANGLE_D180'?
        rotate = VIPS_ANGLE_180;
                 ^~~~~~~~~~~~~~
                 VIPS_ANGLE_D180
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:67:2: note: 'VIPS_ANGLE_D180' declared here
        VIPS_ANGLE_D180,
        ^
../src/sharp.cc:118:18: error: use of undeclared identifier 'VIPS_ANGLE_270'; did you mean 'VIPS_ANGLE_D270'?
        rotate = VIPS_ANGLE_270;
                 ^~~~~~~~~~~~~~
                 VIPS_ANGLE_D270
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:68:2: note: 'VIPS_ANGLE_D270' declared here
        VIPS_ANGLE_D270,
        ^
../src/sharp.cc:123:16: error: use of undeclared identifier 'VIPS_ANGLE_90'
      rotate = VIPS_ANGLE_90;
               ^
../src/sharp.cc:125:16: error: use of undeclared identifier 'VIPS_ANGLE_180'; did you mean 'VIPS_ANGLE_D180'?
      rotate = VIPS_ANGLE_180;
               ^~~~~~~~~~~~~~
               VIPS_ANGLE_D180
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:67:2: note: 'VIPS_ANGLE_D180' declared here
        VIPS_ANGLE_D180,
        ^
../src/sharp.cc:127:16: error: use of undeclared identifier 'VIPS_ANGLE_270'; did you mean 'VIPS_ANGLE_D270'?
      rotate = VIPS_ANGLE_270;
               ^~~~~~~~~~~~~~
               VIPS_ANGLE_D270
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:68:2: note: 'VIPS_ANGLE_D270' declared here
        VIPS_ANGLE_D270,
        ^
../src/sharp.cc:388:21: error: use of undeclared identifier 'VIPS_ANGLE_90'
    if (rotation == VIPS_ANGLE_90 || rotation == VIPS_ANGLE_270) {
                    ^
../src/sharp.cc:388:50: error: use of undeclared identifier 'VIPS_ANGLE_270'; did you mean 'VIPS_ANGLE_D270'?
    if (rotation == VIPS_ANGLE_90 || rotation == VIPS_ANGLE_270) {
                                                 ^~~~~~~~~~~~~~
                                                 VIPS_ANGLE_D270
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:68:2: note: 'VIPS_ANGLE_D270' declared here
        VIPS_ANGLE_D270,
        ^
../src/sharp.cc:495:23: error: use of undeclared identifier 'VIPS_ANGLE_90'
      if (rotation == VIPS_ANGLE_90 || rotation == VIPS_ANGLE_270) {
                      ^
../src/sharp.cc:495:52: error: use of undeclared identifier 'VIPS_ANGLE_270'; did you mean 'VIPS_ANGLE_D270'?
      if (rotation == VIPS_ANGLE_90 || rotation == VIPS_ANGLE_270) {
                                                   ^~~~~~~~~~~~~~
                                                   VIPS_ANGLE_D270
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:68:2: note: 'VIPS_ANGLE_D270' declared here
        VIPS_ANGLE_D270,
        ^
../src/sharp.cc:531:21: error: use of undeclared identifier 'VIPS_ANGLE_0'; did you mean 'VIPS_ANGLE_D0'?
    if (rotation != VIPS_ANGLE_0) {
                    ^~~~~~~~~~~~
                    VIPS_ANGLE_D0
/usr/local/Cellar/vips/8.1.1/include/vips/conversion.h:65:2: note: 'VIPS_ANGLE_D0' declared here
        VIPS_ANGLE_D0,
        ^
In file included from ../src/sharp.cc:1:
In file included from ./.node-gyp/4.0.0/include/node/node.h:42:
./.node-gyp/4.0.0/include/node/v8.h:221:5: error: assigning to 'v8::Primitive *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
./.node-gyp/4.0.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:501:12: note: in instantiation of function template specialization 'v8::Local<v8::Primitive>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(v8::Undefined(v8::Isolate::GetCurrent())));
           ^
../node_modules/nan/nan.h:483:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(Nan::imp::NanEnsureLocal(val))
                             ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/sharp/src/sharp.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (./.nvm/versions/node/v4.0.0/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 Darwin 14.5.0
command "./.nvm/versions/node/v4.0.0/bin/node" "./.nvm/versions/node/v4.0.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd .projectstyle-guide/node_modules/gulp-sharp/node_modules/sharp
gyp ERR! node -v v4.0.0
gyp ERR! node-gyp -v v3.0.1
gyp ERR! not ok
npm ERR! Darwin 14.5.0
npm ERR! argv "./.nvm/versions/node/v4.0.0/bin/node" "./.nvm/versions/node/v4.0.0/bin/npm" "install" "--save-dev" "gulp-sharp"
npm ERR! node v4.0.0
npm ERR! npm  v2.14.2
npm ERR! code ELIFECYCLE

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

npm ERR! Please include the following file with any support request:
npm ERR!     .projectstyle-guide/npm-debug.log
Rafaelolmartins commented 8 years ago

i have the same error...

rizalp commented 8 years ago

Hi there. Sorry for the late response. Updated dependecies to sharp v0.11.2 to resolve issues with node 4.

It should work right now. Confirmed it on Debian Jessie

leehambley commented 8 years ago

Thanks :)