visionmedia / expresso

use mocha
http://visionmedia.github.com/expresso
759 stars 89 forks source link

npm install fails using node 0.10.29 #176

Open smartmouse opened 10 years ago

smartmouse commented 10 years ago

touch obj/js-config.h.stamp g++ -o obj/jsapi.o -c -Wall -Wno-format -MMD -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R -DLINUX -UDEBUG -DNDEBUG -UDEBUG_nodebot -DEDITLINE -I. -I./obj -Os -fstrict-aliasing -fno-exceptions -fno-rtti -Wstrict-aliasing=2 jsapi.cpp jsapi.cpp: In function ‘JSBool JSConvertArgumentsVA(JSContext, uintN, jsval, const char, va_listtag)’: jsapi.cpp:279: error: cannot convert ‘va_list_tag**’ to ‘va_listtag ()[1]’ for argument ‘5’ to ‘JSBool TryArgumentFormatter(JSContext_, const char, JSBool, jsval, va_listtag ()[1])’ jsapi.cpp: In function ‘jsval_ JSPushArgumentsVA(JSContext*, void**, const char, va_listtag)’: jsapi.cpp:387: error: cannot convert ‘va_list_tag’ to ‘__va_listtag ()[1]’ for argument ‘5’ to ‘JSBool TryArgumentFormatter(JSContext_, const char, JSBool, jsval*_, __va_listtag ()[1])’ make[5]: * [obj/jsapi.o] Error 1 make[5]: Leaving directory `/home/nodebot/testExpresso/node_modules/expresso/deps/jscoverage/js' make[4]: * [all] Error 2 make[4]: Leaving directory/home/nodebot/testExpresso/node_modules/expresso/deps/jscoverage/js' make[3]: **\* [all] Error 2 make[3]: Leaving directory/home/nodebot/testExpresso/node_modules/expresso/deps/jscoverage/js' make[2]: [all-recursive] Error 1 make[2]: Leaving directory`/home/nodebot/testExpresso/node_modules/expresso/deps/jscoverage' make[1]: \ [all] Error 2 make[1]: Leaving directory /home/nodebot/testExpresso/node_modules/expresso/deps/jscoverage' make: *** [deps/jscoverage/node-jscoverage] Error 2 npm ERR! expresso@0.9.2 preinstall:make deps/jscoverage/node-jscoverage` npm ERR! Exit status 2 npm ERR! npm ERR! Failed at the expresso@0.9.2 preinstall script. npm ERR! This is most likely a problem with the expresso package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! make deps/jscoverage/node-jscoverage npm ERR! You can get their info via: npm ERR! npm owner ls expresso npm ERR! There is likely additional logging output above.

npm ERR! System Linux 3.0.101-0.31-default npm ERR! command "/home/nodebot/node/bin/node" "/home/nodebot/node/bin/npm" "install" "expresso" npm ERR! cwd /home/nodebot/testExpresso npm ERR! node -v v0.10.29 npm ERR! npm -v 1.4.14 npm ERR! code ELIFECYCLE npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /home/nodebot/testExpresso/npm-debug.log npm ERR! not ok code 0 nodebot@host:~/testExpresso>

The platform is zLinux, Is something wrong with my configuration? do you support zLinux ?

Any help will be appreicated. Thank you so much,

joransiu commented 10 years ago

This compilation error on s390x is similar to the problem reported here on Darwin64: https://bugzilla.mozilla.org/show_bug.cgi?id=436263

The issue is that in deps/jscoverage/js/jscpucfg.cpp, there following line also requires a define s390x in order to compile successfully on zLinux.

#if defined __GNUC__ && defined __x86_64__
    printf("#define HAVE_VA_LIST_AS_ARRAY 1\n");
    printf("\n");
 #endif

needs to be changed to:

#if defined __GNUC__ && ( defined __x86_64__ || defined __s390x__ )
    printf("#define HAVE_VA_LIST_AS_ARRAY 1\n");
    printf("\n");
#endif
tj commented 10 years ago

this library was deprecated years ago, better off using Mocha or something more recent

smartmouse commented 10 years ago

That is interesting. Thanks., The reason why this was raised - node-cache has a dependencies on expresso.

tj commented 10 years ago

ahh gotcha