Closed ecchi closed 9 years ago
I can't tell what the source of the problem is. I might have this problem but fixed it on my computer in an odd way.
Can you run this command "pkg-config fuse --cflags-only-I" and go the path for fuse without the -I. On my system, it showed "-I/usr/local/include/osxfuse/fuse" after running it. And I went to "/usr/local/include/osxfuse/fuse".
Can you send me the "fuse_lowlevel.h" from that folder?
On Wed, Nov 4, 2015 at 6:02 PM ecchi notifications@github.com wrote:
I've tried a few different configurations. OS tried: Mac OSX 10.7.5, and 10.11.1, node versions tried: iojs 3.3.1, node 0.12.5, and node 5.0.0. osxfuse tried: osxfuse 2.7.5 and 2.8.2. Running pkg-config 0.29
Doesn't seem to matter the configuration.
fusejs@1.4.0 install /Users/ecchi/Code/node_modules/fusejs node-gyp rebuild
CXX(target) Release/obj.target/fusejs/src/bindings.o CXX(target) Release/obj.target/fusejs/src/file_info.o CXX(target) Release/obj.target/fusejs/src/filesystem.o CXX(target) Release/obj.target/fusejs/src/node_fuse.o CXX(target) Release/obj.target/fusejs/src/reply.o CXX(target) Release/obj.target/fusejs/src/forget_data.o ../src/forget_data.cc:40:85: error: member access into incomplete type 'struct fuse_forget_data' info.GetReturnValue().Set( Nan::New
(static_cast (forget_data->fd->ino))); ^ ../src/forget_data.h:19:20: note: forward declaration of 'NodeFuse::fuse_forget_data' struct fuse_forget_data _fd; ^ ../src/forget_data.cc:40:87: error: expected ')' info.GetReturnValue().Set( Nan::New (static_cast (forget_data->fd->ino))); ^ ../src/forget_data.cc:40:69: note: to match this '(' info.GetReturnValue().Set( Nan::New (static_cast (forget_data->fd->ino))); ^ ../src/forget_data.cc:47:86: error: member access into incomplete type 'struct fuse_forget_data' info.GetReturnValue().Set( Nan::New ( static_cast (forget_data->fd->nlookup)) ); ^ ../src/forget_data.h:19:20: note: forward declaration of 'NodeFuse::fuse_forget_data' struct fuse_forget_data fd; ^ ../src/forget_data.cc:47:88: error: expected ')' info.GetReturnValue().Set( Nan::New ( static_cast _* [Release/obj.target/fusejs/src/forget_data.o] Error 1 gyp ERR! build error gyp ERR! stack Error:(forget_data->fd->nlookup)) ); ^ ../src/forget_data.cc:47:70: note: to match this '(' info.GetReturnValue().Set( Nan::New ( static_cast (forget_data->fd->nlookup)) ); ^ 4 errors generated. make: make
failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/local/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 15.0.0 gyp ERR! command "/usr/local/bin/iojs" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /Users/ecchi/Code/node_modules/fusejs gyp ERR! node -v v3.3.1 gyp ERR! node-gyp -v v3.0.3 gyp ERR! not ok npm ERR! Darwin 15.0.0 npm ERR! argv "/usr/local/bin/iojs" "/usr/local/bin/npm" "install" "fusejs" npm ERR! node v3.3.1 npm ERR! npm v2.14.3 npm ERR! code ELIFECYCLEnpm ERR! fusejs@1.4.0 install:
node-gyp rebuild
npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the fusejs@1.4.0 install script 'node-gyp rebuild'. npm ERR! This is most likely a problem with the fusejs 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 fusejs npm ERR! There is likely additional logging output above.npm ERR! Please include the following file with any support request: npm ERR! /Users/ecchi/Code/npm-debug.log
— Reply to this email directly or view it on GitHub https://github.com/c4milo/fusejs/issues/27.
Eric
same path for me too. attached lowlevel to zippyshare (since I'm not authorized to attach files here)
Could you try the PR i made? I don't want to pull it before it compiles for you.
Slightly different output.
➜ fusejs git:(master) npm install
npm WARN package.json fusejs@1.4.1 'repositories' (plural) Not supported. Please pick one as the 'repository' field
-
> fusejs@1.4.1 install /Users/ecchi/GitHub/fusejs
> node-gyp rebuild
CXX(target) Release/obj.target/fusejs/src/bindings.o
CXX(target) Release/obj.target/fusejs/src/file_info.o
CXX(target) Release/obj.target/fusejs/src/filesystem.o
In file included from ../src/filesystem.cc:11:
../src/mpmc_queue.h:19:10: fatal error: 'atomic' file not found
#include <atomic>
^
1 error generated.
make: *** [Release/obj.target/fusejs/src/filesystem.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/local/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 15.0.0
gyp ERR! command "/usr/local/bin/iojs" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/ecchi/GitHub/fusejs
gyp ERR! node -v v3.3.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
npm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/bin/iojs" "/usr/local/bin/npm" "install"
npm ERR! node v3.3.1
npm ERR! npm v2.14.3
npm ERR! code ELIFECYCLE
npm ERR! fusejs@1.4.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the fusejs@1.4.1 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the fusejs 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 fusejs
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/ecchi/GitHub/fusejs/npm-debug.log
Do you have access to the GNU GCC? I've been using the GNU GCC/G++ 4.8 and newer, but if you don't have access to it, I can work around it I think.
On Tue, Nov 10, 2015 at 12:26 PM ecchi notifications@github.com wrote:
Slightly different output.
➜ fusejs git:(master) npm install
npm WARN package.json fusejs@1.4.1 'repositories' (plural) Not supported. Please pick one as the 'repository' field
fusejs@1.4.1 install /Users/ecchi/GitHub/fusejs node-gyp rebuild
CXX(target) Release/obj.target/fusejs/src/bindings.o CXX(target) Release/obj.target/fusejs/src/file_info.o CXX(target) Release/obj.target/fusejs/src/filesystem.o In file included from ../src/filesystem.cc:11: ../src/mpmc_queue.h:19:10: fatal error: 'atomic' file not found
include
^
1 error generated. make: *\ [Release/obj.target/fusejs/src/filesystem.o] Error 1 gyp ERR! build error gyp ERR! stack Error:
make
failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/local/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 15.0.0 gyp ERR! command "/usr/local/bin/iojs" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /Users/ecchi/GitHub/fusejs gyp ERR! node -v v3.3.1 gyp ERR! node-gyp -v v3.0.3 gyp ERR! not oknpm ERR! Darwin 15.0.0 npm ERR! argv "/usr/local/bin/iojs" "/usr/local/bin/npm" "install" npm ERR! node v3.3.1 npm ERR! npm v2.14.3 npm ERR! code ELIFECYCLE npm ERR! fusejs@1.4.1 install:
node-gyp rebuild
npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the fusejs@1.4.1 install script 'node-gyp rebuild'. npm ERR! This is most likely a problem with the fusejs 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 fusejs npm ERR! There is likely additional logging output above.npm ERR! Please include the following file with any support request: npm ERR! /Users/ecchi/GitHub/fusejs/npm-debug.log
— Reply to this email directly or view it on GitHub https://github.com/c4milo/fusejs/issues/27#issuecomment-155498782.
Eric
no, it appears Xcode uses 4.2.1
gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/c++/4.2.1
Apple LLVM version 7.0.0 (clang-700.1.76)
Target: x86_64-apple-darwin15.0.0
Thread model: posix
I can install a different version with homebrew, but I would prefer not messing with it.
I have a different version installed through homebrew. It leaves the binary as gcc-4.8 or g++-4.8.
I can set it up tonight such that it can work with Apple's compiler.
On Tue, Nov 10, 2015 at 1:13 PM ecchi notifications@github.com wrote:
no, it appears Xcode uses 4.2.1
gcc -v Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/c++/4.2.1 Apple LLVM version 7.0.0 (clang-700.1.76) Target: x86_64-apple-darwin15.0.0 Thread model: posix
I can install a different version with homebrew, but I would prefer not messing with it.
— Reply to this email directly or view it on GitHub https://github.com/c4milo/fusejs/issues/27#issuecomment-155518766.
Eric
Can you try it now?
still compiling errors, new ones though:
➜ fusejs git:(master) ✗ npm install
npm WARN package.json fusejs@1.4.1 'repositories' (plural) Not supported. Please pick one as the 'repository' field
> fusejs@1.4.1 install /Users/gregd/GitHub/fusejs
> node-gyp rebuild
CXX(target) Release/obj.target/fusejs/src/bindings.o
CXX(target) Release/obj.target/fusejs/src/file_info.o
CXX(target) Release/obj.target/fusejs/src/filesystem.o
CXX(target) Release/obj.target/fusejs/src/node_fuse.o
CXX(target) Release/obj.target/fusejs/src/reply.o
CXX(target) Release/obj.target/fusejs/src/forget_data.o
SOLINK_MODULE(target) Release/fusejs.node
clang: warning: argument unused during compilation: '-pthread'
ld: warning: object file (Release/obj.target/fusejs/src/bindings.o) was built for newer OSX version (10.7) than being linked (10.5)
ld: warning: object file (Release/obj.target/fusejs/src/file_info.o) was built for newer OSX version (10.7) than being linked (10.5)
ld: warning: object file (Release/obj.target/fusejs/src/filesystem.o) was built for newer OSX version (10.7) than being linked (10.5)
ld: warning: object file (Release/obj.target/fusejs/src/node_fuse.o) was built for newer OSX version (10.7) than being linked (10.5)
ld: warning: object file (Release/obj.target/fusejs/src/reply.o) was built for newer OSX version (10.7) than being linked (10.5)
ld: warning: object file (Release/obj.target/fusejs/src/forget_data.o) was built for newer OSX version (10.7) than being linked (10.5)
This was the 10.11.1 machine
Can you give it a try to see if it works? It does give a warning, but it's not an error. It does work on my laptop.
At the very least, running require(fusejs)
should not cause nodejs to crash.
Ok. This treads into your node-gdrive territory, but its the only means I have of testing this. I changed your node-gdrive package.json to point to your github of fusejs. Yes, same warnings, but no errors.
However running iojs client.es6.js produces:
client.es6.js:119
setImmediate( ()=> { queryDatabaseAndParseFiles(offset) } );
^
SyntaxError: Unexpected token )
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:413:25)
at Object.Module._extensions..js (module.js:448:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:471:10)
at startup (node.js:117:18)
at node.js:951:3
I have my config from way back when it was still coffee-script. So I also tried: iojs fs.es6.js:
iojs fs.es6.js
/Users/ecchi/Code/node-gdrive-fuse/src/client.es6.js:119
setImmediate( ()=> { queryDatabaseAndParseFiles(offset) } );
^
SyntaxError: Unexpected token )
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:413:25)
at Object.Module._extensions..js (module.js:448:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/Users/ecchi/Code/node-gdrive-fuse/src/fs.es6.js:12:16)
at Module._compile (module.js:430:26)
at Object.Module._extensions..js (module.js:448:10)
Can you try with nodejs v4 or 5? I've started using fat arrows and I'm not sure if they are available in all versions of nodejs/iojs.
node 5.0
node fs.es6.js
module.js:450
return process.dlopen(module, path._makeLong(filename));
^
Error: Module version mismatch. Expected 47, got 45.
at Error (native)
at Object.Module._extensions..node (module.js:450:18)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (/Users/ecchi/Code/node-gdrive-fuse/node_modules/fusejs/fuse.js:5:16)
at Module._compile (module.js:425:26)
at Object.Module._extensions..js (module.js:432:10)
at Module.load (module.js:356:32)
➜ src git:(master) ✗ node client.es6.js
module.js:450
return process.dlopen(module, path._makeLong(filename));
^
Error: Module version mismatch. Expected 47, got 45.
at Error (native)
at Object.Module._extensions..node (module.js:450:18)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (/Users/ecchi/Code/node-gdrive-fuse/node_modules/mmmagic/index.js:3:13)
at Module._compile (module.js:425:26)
at Object.Module._extensions..js (module.js:432:10)
at Module.load (module.js:356:32)
Did you recompile the modules first? i.e. run npm install
.
There was an API change between version 3/4 and 5, which would cause those errors.
Just to be safe, I would just remove the node_modules folder, and then run npm install
again.
you are right, sorry for not re-compiling. It works now :)
I've tried a few different configurations. OS tried: Mac OSX 10.7.5, and 10.11.1, node versions tried: iojs 3.3.1, node 0.12.5, and node 5.0.0. osxfuse tried: osxfuse 2.7.5 and 2.8.2. Running pkg-config 0.29
Doesn't seem to matter the configuration.