dcodeIO / webassembly

A minimal toolkit and runtime to produce and run WebAssembly modules.
Other
816 stars 31 forks source link

Tools not working #6

Open winksaville opened 7 years ago

winksaville commented 7 years ago

I tried to use npm install webassembly and wa compile failed to compile. I then forked and cloned this repo and tried it and it takes the same way. After investigating I determined the pre-compiled tools isn't untaring properly and in linux-x64 only clang is there and it's not executable.

I then tired untaring manually and that worked but when I tried to execute clang it failed because of missing shared libraries. In the end I used a local version of wasm clang, binaryen, want tools that I'd created previously. And symlinked tools/bin/linux-x64 to my build, and that worked.

dcodeIO commented 7 years ago

Hmm, that's strange. The tool used to create the tgz is https://github.com/archiverjs/node-archiver - not sure if that's an issue on their side.

However, a Linux install is performed on TravisCI, and it seems to be working there. The test cases are rather rudimentary, though - just calling the tools and watching for error codes.

Might also be that the binaries are tied to Debian-flavoured distributions somehow because that's what I used.

winksaville commented 7 years ago

I'd suggest you trying it, I was surprised that the dynamic libs were missing when I did it manually. Probably something I've done wrong and glad to help debug it, but won't be back online for several hours as I'm traveling right now.

On Fri, May 26, 2017, 8:30 AM Daniel Wirtz notifications@github.com wrote:

Hmm, that's strange. The tool used to create the tgz is https://github.com/archiverjs/node-archiver - not sure if that's an issue on their side.

— You are receiving this because you authored the thread.

Reply to this email directly, view it on GitHub https://github.com/dcodeIO/webassembly/issues/6#issuecomment-304313140, or mute the thread https://github.com/notifications/unsubscribe-auth/AA-hHINj9spUa37qe_PuWT20KkAgKrgRks5r9u_-gaJpZM4Nnugz .

bharley commented 7 years ago

I'm on OS X, and the tools fail to untar properly for me also. From a fresh install, I end up with a tools directory that looks like:

$ tree node_modules/webassembly/tools
node_modules/webassembly/tools
└── bin
    ├── LICENSE-BINARYEN
    ├── LICENSE-LLVM
    ├── README.md
    └── darwin-x64
        └── clang

2 directories, 4 files

and clang is corrupted.

Manually downloading the archive on the releases page and extracting into the proper location works though.

dcodeIO commented 7 years ago

I repacked and reuploaded the darwin archive now. Hope that helps. If it doesn't, then there's probably something wrong with the unpacker we use.

bharley commented 7 years ago

No dice. I was able to use the previous archive successfully by doing the extraction myself, so I didn't figure that would change anything.

dcodeIO commented 7 years ago

My assumption here is that the archive was fine for any other unpacker, but incompatible with the node based unpacker we use internally for some reason. Could you try if it is working now? If that doesn't solve the issue, which is likely, I'd at least know where to look at next.

bharley commented 7 years ago

It didn't work. I dug into the install script, and it looks like tar.gz isn't preventing the node process from exiting. If I run all of the functions through the Node repl, it works perfectly.

It looks like there are a couple of relevant bug reports on tar.gz's Github: alanhoff/node-tar.gz#29 and alanhoff/node-tar.gz#44

Elmapul commented 7 years ago

same here command not found by going to node_modules/webassembly/bin and typing : ./wa compile -o program.wasm program.c i can compile