samshull / node-proxy

Deprecated: Harmony Proxies in node (no longer needed)
MIT License
162 stars 29 forks source link

Install error on FreeBSD - "cd: too many arguments" #7

Closed mikl closed 13 years ago

mikl commented 13 years ago

I am having issues with installing node-proxy on FreeBSD. It seems that something weird is going on with a cd-command.

basil% npm install

> node-proxy@0.3.2 install /srv/www/[..]/node_modules/now/node_modules/node-proxy
> make

BUILDING: C++ Component
Checking for program g++ or c++          : /usr/bin/g++
Checking for program cpp                 : /usr/bin/cpp
Checking for program ar                  : /usr/bin/ar
Checking for program ranlib              : /usr/bin/ranlib
Checking for g++                         : ok
Checking for node path                   : not found
Checking for node prefix                 : ok /usr/local
'configure' finished successfully (0.117s)
Waf: Entering directory `/srv/www/[..]/node_modules/now/node_modules/node-proxy/src/build'
[1/2] cxx: node-proxy.cc -> build/default/node-proxy_1.o
In file included from ../node-proxy.cc:33:
.././node-proxy.h:152:41: warning: no newline at end of file
[2/2] cxx_link: build/default/node-proxy_1.o -> build/default/node-proxy.node
Waf: Leaving directory `/srv/www/[..]/node_modules/now/node_modules/node-proxy/src/build'
'build' finished successfully (1.113s)
cd: too many arguments
*** Error code 2

Stop in /srv/www/[..]/node_modules/now/node_modules/node-proxy.
npm ERR! error installing node-proxy@0.3.2 Error: node-proxy@0.3.2 install: `make`
npm ERR! error installing node-proxy@0.3.2 `sh "-c" "make"` failed with 1
npm ERR! error installing node-proxy@0.3.2     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/exec.js:49:20)
npm ERR! error installing node-proxy@0.3.2     at ChildProcess.emit (events.js:67:17)
npm ERR! error installing node-proxy@0.3.2     at ChildProcess.onexit (child_process.js:192:12)
npm ERR! error installing now@0.6.1 Error: node-proxy@0.3.2 install: `make`
npm ERR! error installing now@0.6.1 `sh "-c" "make"` failed with 1
npm ERR! error installing now@0.6.1     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/exec.js:49:20)
npm ERR! error installing now@0.6.1     at ChildProcess.emit (events.js:67:17)
npm ERR! error installing now@0.6.1     at ChildProcess.onexit (child_process.js:192:12)
npm ERR! node-proxy@0.3.2 install: `make`
npm ERR! `sh "-c" "make"` failed with 1
npm ERR!
npm ERR! Failed at the node-proxy@0.3.2 install script.
npm ERR! This is most likely a problem with the node-proxy package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     make
npm ERR! You can get their info via:
npm ERR!     npm owner ls node-proxy
npm ERR! There is likely additional logging output above.
npm ERR!
npm ERR! System FreeBSD 8.1-RELEASE
npm ERR! command "node" "/usr/local/bin/npm" "install"
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /srv/www/[..]/npm-debug.log
npm not ok
samshull commented 13 years ago

Have you tried downloading the repo and building without npm?

mikl commented 13 years ago

Yeah, that works fine. Installing it alone via npm install node-proxy also works as it should, but when I do a npm install now (to get nowjs), I get the aforementioned error…

mikl commented 13 years ago

The plot thickens – even if node-proxy sucessfully installs, I get this error when I try to run something that uses it:

/libexec/ld-elf.so.1: /srv/www/[..]/node_modules/node-proxy/lib/node-proxy.node: Undefined symbol "_ZN2v811HandleScopeC1Ev"

samshull commented 13 years ago

What version of node.js are you compiling against?

mikl commented 13 years ago

Node v0.4.8 on FreeBSD 8.1-RELEASE amd64 :)

samshull commented 13 years ago

Could you post the output from running make test in the repo directory?

mikl commented 13 years ago

Clean as a whistle:

(mikl@basil) (378/pts/1/0) (~/node-proxy)
% make test
BUILDING: C++ Component
Checking for program g++ or c++          : /usr/bin/g++ 
Checking for program cpp                 : /usr/bin/cpp 
Checking for program ar                  : /usr/bin/ar 
Checking for program ranlib              : /usr/bin/ranlib 
Checking for g++                         : ok  
Checking for node path                   : not found 
Checking for node prefix                 : ok /usr/local 
'configure' finished successfully (0.029s)
Waf: Entering directory `/usr/home/mikl/node-proxy/src/build'
[1/2] cxx: node-proxy.cc -> build/default/node-proxy_1.o
[2/2] cxx_link: build/default/node-proxy_1.o -> build/default/node-proxy.node
Waf: Leaving directory `/usr/home/mikl/node-proxy/src/build'
'build' finished successfully (0.439s)
node test/test.js
Running tests...

1: Base Proxy methods
  Proxy.create: PASS
  Proxy.createFunction: PASS
  Proxy.createFunction with optional constructor trap: PASS
  Proxy.isTrapping on proxy object: PASS

2: Testing proxy function instance
  proxy function is callable: PASS
  proxy function has accessible properties: PASS
  proxy function get properties: PASS
  proxy function as constructor: PASS
  proxy function instance property handling: PASS

3: Testing proxy object instance
  has property 'first': PASS
  get property 'first': PASS
  set property 'first' to new value: PASS
  set new property 'second': PASS
  has new property 'second': PASS
  get newly set property 'second': PASS
  iterate property names: PASS
  Object.getOwnPropertyNames on proxy object: PASS
  Object.getOwnPropertyNames returned an Array: PASS
  Object.getOwnPropertyNames return value has the correct length: PASS
  Object.getOwnPropertyNames has the correct values: PASS
  Object.keys on proxy object: PASS
  Object.keys returned an Array: PASS
  Object.keys return value has the correct length: PASS
  Object.keys has the correct values: PASS
  delete 'second': PASS
  proxy instance no longer has property 'second': PASS

4: Fundamental traps
  PropertyDescriptor context for get should be the receiver: PASS
  PropertyDescriptor context for set should be the receiver: PASS
  PropertyDescriptor should get value if get method is not supplied: PASS
  PropertyDescriptor should set value if set method is not supplied: PASS

5: Derived traps
  proxy context should be the PropertyHandler for derived trap 'get': PASS
  proxy context should be the PropertyHandler for derived trap 'has': PASS
  proxy context should be the PropertyHandler for derived trap 'enumerate': PASS
  proxy context should be the PropertyHandler for derived trap 'set': PASS

6: ECMAScript 5 implementation methods
  Proxy.defineProperty on proxy object: PASS
  proxy has newly defined property: PASS
  proxy's newly defined property have correct return value: PASS
  proxy's newly defined property are reflected in underlying handlers: PASS
  Proxy.defineProperties on proxy object: PASS
  proxy has newly defined properties: PASS
  proxy's newly defined properties have correct return value: PASS
  proxy's newly defined properties are reflected in underlying handlers: PASS

7: Additional method tests
  Proxy.isProxy proxy object: PASS
  Proxy.isProxy non-proxy object: PASS
  Proxy.setPrototype of proxy object: PASS
  proxy object is instanceof RegExp: PASS
  Proxy.setPrototype of non-proxy object: PASS
  non-proxy object is instanceof RegExp: PASS
  Proxy.clone proxy object: PASS
  cloned proxy maintains prototype of base proxy: PASS
  Proxy.clone non-proxy object: PASS
  cloned object maintains prototype of base: PASS
  set hidden property on cloned object: PASS
  get hidden property on cloned object: PASS

Passed 54 of 54 tests

Failed 0 of 54 tests
samshull commented 13 years ago

So, if make test comes out clean, how can this error be reproduced?

mikl commented 13 years ago

Interestingly, this persists with node-proxy 0.3.2, but is not reproducible with 0.5.2.