{ "id": "168332", "key": "MOD-2339", "fields": { "issuetype": { "id": "7", "description": "gh.issue.story.desc", "name": "Story", "subtask": false }, "project": { "id": "10034", "key": "MOD", "name": "Appcelerator Modules", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2017-06-10T11:50:29.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [], "versions": [], "issuelinks": [], "assignee": null, "updated": "2018-03-06T18:52:16.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [], "description": " When trying to build the [APS SDK|https://github.com/appcelerator/aps_sdk] from the source (using {{travis_build.sh}} or the platform-specific {{build.js}}, the build fails during the recompiling of the {{node-gyp}} module:\r\n{code}\r\nHans-Macbook-Pro:ios hknoechel$ ./travis_build.sh \r\n\r\nSetting up the node modules for the build scripts\r\n\r\nInstalling APSCrypto library\r\n./travis_build.sh: line 15: pushd: ios/framework/Libraries/APSCrypto/: No such file or directory\r\n######################################################################## 100.0%\r\n./travis_build.sh: line 17: popd: directory stack empty\r\nInstalling Node modules for Analytics\r\n./travis_build.sh: line 20: cd: ios/support/analytics: No such file or directory\r\nnpm WARN deprecated wrench@1.5.9: wrench.js is deprecated! You should check out fs-extra (https://github.com/jprichardson/node-fs-extra) for any operations you were using wrench for. Thanks for all the usage over the years.\r\n\r\n> ref@1.3.4 install /Users/hknoechel/Documents/appcelerator_modules/aps_sdk/ios/node_modules/ref\r\n> node-gyp rebuild\r\n\r\n CXX(target) Release/obj.target/binding/src/binding.o\r\n SOLINK_MODULE(target) Release/binding.node\r\nclang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated]\r\n\r\n> ffi@1.2.5 install /Users/hknoechel/Documents/appcelerator_modules/aps_sdk/ios/node_modules/ffi\r\n> node-gyp rebuild\r\n\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/prep_cif.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/types.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/raw_api.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/java_raw_api.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/closures.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/x86/ffi.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/x86/ffi64.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/x86/darwin.o\r\n CC(target) Release/obj.target/ffi/deps/libffi/src/x86/darwin64.o\r\n LIBTOOL-STATIC Release/libffi.a\r\n CXX(target) Release/obj.target/ffi_bindings/src/ffi.o\r\nIn file included from ../src/ffi.cc:2:\r\n../src/ffi.h:57:43: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?\r\n static Handle FFIPrepCif(const Arguments& args);\r\n ^~~~~~~~~\r\n v8::internal::Arguments\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:147:7: note: 'v8::internal::Arguments' declared\r\n here\r\nclass Arguments;\r\n ^\r\nIn file included from ../src/ffi.cc:2:\r\n../src/ffi.h:58:46: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?\r\n static Handle FFIPrepCifVar(const Arguments& args);\r\n ^~~~~~~~~\r\n v8::internal::Arguments\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:147:7: note: 'v8::internal::Arguments' declared\r\n here\r\nclass Arguments;\r\n ^\r\nIn file included from ../src/ffi.cc:2:\r\n../src/ffi.h:59:40: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?\r\n static Handle FFICall(const Arguments& args);\r\n ^~~~~~~~~\r\n v8::internal::Arguments\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:147:7: note: 'v8::internal::Arguments' declared\r\n here\r\nclass Arguments;\r\n ^\r\nIn file included from ../src/ffi.cc:2:\r\n../src/ffi.h:60:45: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?\r\n static Handle FFICallAsync(const Arguments& args);\r\n ^~~~~~~~~\r\n v8::internal::Arguments\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:147:7: note: 'v8::internal::Arguments' declared\r\n here\r\nclass Arguments;\r\n ^\r\nIn file included from ../src/ffi.cc:2:\r\n../src/ffi.h:64:40: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?\r\n static Handle Strtoul(const Arguments& args);\r\n ^~~~~~~~~\r\n v8::internal::Arguments\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:147:7: note: 'v8::internal::Arguments' declared\r\n here\r\nclass Arguments;\r\n ^\r\nIn file included from ../src/ffi.cc:2:\r\n../src/ffi.h:94:41: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?\r\n static Handle Callback(const Arguments& args);\r\n ^~~~~~~~~\r\n v8::internal::Arguments\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:147:7: note: 'v8::internal::Arguments' declared\r\n here\r\nclass Arguments;\r\n ^\r\n../src/ffi.cc:19:15: error: calling a protected constructor of class 'v8::HandleScope'\r\n HandleScope scope;\r\n ^\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:915:13: note: declared protected here\r\n V8_INLINE HandleScope() {}\r\n ^\r\n../src/ffi.cc:21:3: error: unexpected namespace name 'Buffer': expected expression\r\n Buffer *buf = Buffer::New(ptr, length, wrap_pointer_cb, user_data);\r\n ^\r\n../src/ffi.cc:21:11: error: use of undeclared identifier 'buf'\r\n Buffer *buf = Buffer::New(ptr, length, wrap_pointer_cb, user_data);\r\n ^\r\n../src/ffi.cc:21:17: error: no matching function for call to 'New'\r\n Buffer *buf = Buffer::New(ptr, length, wrap_pointer_cb, user_data);\r\n ^~~~~~~~~~~\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node_buffer.h:34:40: note: candidate function not\r\n viable: requires at most 3 arguments, but 4 were provided\r\nNODE_EXTERN v8::MaybeLocal New(v8::Isolate* isolate,\r\n ^\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node_buffer.h:46:40: note: candidate function not\r\n viable: requires 3 arguments, but 4 were provided\r\nNODE_EXTERN v8::MaybeLocal New(v8::Isolate* isolate,\r\n ^\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node_buffer.h:39:40: note: candidate function not\r\n viable: requires 5 arguments, but 4 were provided\r\nNODE_EXTERN v8::MaybeLocal New(v8::Isolate* isolate,\r\n ^\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node_buffer.h:31:40: note: candidate function not\r\n viable: requires 2 arguments, but 4 were provided\r\nNODE_EXTERN v8::MaybeLocal New(v8::Isolate* isolate, size_t length);\r\n ^\r\n../src/ffi.cc:22:16: error: no member named 'Close' in 'v8::HandleScope'\r\n return scope.Close(buf->handle_);\r\n ~~~~~ ^\r\n../src/ffi.cc:22:22: error: use of undeclared identifier 'buf'\r\n return scope.Close(buf->handle_);\r\n ^\r\n../src/ffi.cc:28:33: error: too few arguments to function call, single argument 'isolate' was not\r\n specified\r\n Local o = Object::New();\r\n ~~~~~~~~~~~ ^\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/v8.h:3006:3: note: 'New' declared here\r\n static Local New(Isolate* isolate);\r\n ^\r\n../src/ffi.cc:31:18: error: no member named 'NewSymbol' in 'v8::String'\r\n o->Set(String::NewSymbol(\"dlopen\"), WrapPointer((char *)dlopen));\r\n ~~~~~~~~^\r\n../src/ffi.cc:32:18: error: no member named 'NewSymbol' in 'v8::String'\r\n o->Set(String::NewSymbol(\"dlclose\"), WrapPointer((char *)dlclose));\r\n ~~~~~~~~^\r\n../src/ffi.cc:33:18: error: no member named 'NewSymbol' in 'v8::String'\r\n o->Set(String::NewSymbol(\"dlsym\"), WrapPointer((char *)dlsym));\r\n ~~~~~~~~^\r\n../src/ffi.cc:34:18: error: no member named 'NewSymbol' in 'v8::String'\r\n o->Set(String::NewSymbol(\"dlerror\"), WrapPointer((char *)dlerror));\r\n ~~~~~~~~^\r\n../src/ffi.cc:36:23: error: no member named 'NewSymbol' in 'v8::String'\r\n target->Set(String::NewSymbol(\"StaticFunctions\"), o);\r\n ~~~~~~~~^\r\n../src/ffi.cc:49:3: error: no matching function for call to 'NODE_SET_METHOD'\r\n NODE_SET_METHOD(target, \"ffi_prep_cif\", FFIPrepCif);\r\n ^~~~~~~~~~~~~~~\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node.h:269:25: note: expanded from macro\r\n 'NODE_SET_METHOD'\r\n#define NODE_SET_METHOD node::NODE_SET_METHOD\r\n ^~~~~~~~~~~~~~~~~~~~~\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node.h:257:13: note: candidate function not viable:\r\n no known conversion from 'Handle (const v8::internal::Arguments &)' (aka\r\n 'v8::Local (const v8::internal::Arguments &)') to 'v8::FunctionCallback' (aka 'void\r\n (*)(const FunctionCallbackInfo &)') for 3rd argument\r\ninline void NODE_SET_METHOD(v8::Local recv,\r\n ^\r\n/Users/hknoechel/.node-gyp/6.10.2/include/node/node.h:244:13: note: candidate function not viable:\r\n no known conversion from 'Handle (const v8::internal::Arguments &)' (aka\r\n 'v8::Local (const v8::internal::Arguments &)') to 'v8::FunctionCallback' (aka 'void\r\n (*)(const FunctionCallbackInfo &)') for 3rd argument\r\ninline void NODE_SET_METHOD(v8::Local recv,\r\n ^\r\nfatal error: too many errors emitted, stopping now [-ferror-limit=]\r\n20 errors generated.\r\nmake: *** [Release/obj.target/ffi_bindings/src/ffi.o] Error 1\r\ngyp ERR! build error \r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)\r\ngyp ERR! stack at emitTwo (events.js:106:13)\r\ngyp ERR! stack at ChildProcess.emit (events.js:191:7)\r\ngyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)\r\ngyp ERR! System Darwin 16.6.0\r\ngyp ERR! command \"/usr/local/bin/node\" \"/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /Users/hknoechel/Documents/appcelerator_modules/aps_sdk/ios/node_modules/ffi\r\ngyp ERR! node -v v6.10.2\r\ngyp ERR! node-gyp -v v3.4.0\r\ngyp ERR! not ok \r\nAppcelerator-Framework@3.0.1 /Users/hknoechel/Documents/appcelerator_modules/aps_sdk/ios\r\n├── colors@1.1.2 \r\n├─┬ commander@2.9.0 \r\n│ └── graceful-readlink@1.0.1 \r\n├── fibers@2.0.0 \r\n├─┬ fields@0.1.24 \r\n│ ├── colors@0.6.2 \r\n│ ├── keypress@0.2.1 \r\n│ └── sprintf@0.1.5 \r\n├─┬ program@0.1.0 \r\n│ ├── async@0.2.10 \r\n│ ├── ini@1.1.0 \r\n│ └─┬ tilde-expansion@0.0.0 \r\n│ └─┬ etc-passwd@0.0.1 \r\n│ └── lazylines@1.0.0 \r\n├── semver@5.3.0 \r\n├── validator@7.0.0 \r\n└── wrench@1.5.9 \r\n\r\nnpm WARN Appcelerator-Framework@3.0.1 No repository field.\r\nnpm WARN Appcelerator-Framework@3.0.1 No license field.\r\nnpm ERR! Darwin 16.6.0\r\nnpm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"install\"\r\nnpm ERR! node v6.10.2\r\nnpm ERR! npm v3.10.10\r\nnpm ERR! code ELIFECYCLE\r\n\r\nnpm ERR! ffi@1.2.5 install: `node-gyp rebuild`\r\nnpm ERR! Exit status 1\r\nnpm ERR! \r\nnpm ERR! Failed at the ffi@1.2.5 install script 'node-gyp rebuild'.\r\nnpm ERR! Make sure you have the latest version of node.js and npm installed.\r\nnpm ERR! If you do, this is most likely a problem with the ffi package,\r\nnpm ERR! not with npm itself.\r\nnpm ERR! Tell the author that this fails on your system:\r\nnpm ERR! node-gyp rebuild\r\nnpm ERR! You can get information on how to open an issue for this project with:\r\nnpm ERR! npm bugs ffi\r\nnpm ERR! Or if that isn't available, you can get their info via:\r\nnpm ERR! npm owner ls ffi\r\nnpm ERR! There is likely additional logging output above.\r\n{code}\r\nI am using Node 6.10.2 and npm 3.10.10.", "attachment": [], "flagged": false, "summary": "APS-SDK: Cannot build project", "creator": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "comment": { "comments": [ { "id": "421700", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "The reason this is failing is because the {{ffi}} module apparently doesn't support Node.js 6.10.2. According to the {{ffi}} readme, it only supports 0.10 and older, however they do test Node.js 6.x in their Travis CI build: https://travis-ci.org/node-ffi/node-ffi/builds/226530385.\r\n\r\nI'll have to investigate more when I have some time. Stay tuned.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2017-06-10T15:04:37.000+0000", "updated": "2017-06-10T15:04:37.000+0000" }, { "id": "421870", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "I'm not sure which dependency is pulling in {{ffi@1.2.5}}, but {{ffi@1.2.5}} is 4 years old and does not support Node.js 6. This is likely due to aps_sdk depending on a no-longer-maintained packages.\r\n\r\nThe aps_sdk iOS scripts need to be updated. There are at least 3 NPM dependencies that are no longer maintained and have compatibility problems with newer Node.js versions.\r\n\r\nUntil the scripts can be fixed/updated, you should use Node.js 0.10 and NPM 2 to build aps_sdk.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2017-06-13T16:32:18.000+0000", "updated": "2017-06-13T16:32:18.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }