Comments (5)
@rkh Thank you for your try:) Just FYI, adding -e "GNUMAKEFLAGS=-j$((1 + $(nproc --all)))"
to docker run
would speed up the ruby build.
from ruby.wasm.
@kateinoigakukun Oh great. FYI running it in Docker works like a charm, not a single hick up, other than it being slow (for us this isn't a deal breaker, can move it to a beefy build system).
@rubyFeedback unless you want to patch Ruby or compile a native extension, you shouldn't need to install Docker at all to build a wasm. Instead follow the wasi-vfs steps in the readme. Significantly faster as well. You can also selectively include the standard library, add your own Ruby files, etc.
from ruby.wasm.
The build steps for setting up tools are a little bit complicated, so it's recommended to use docker image, but it's optional.
If you want to build outside of the image, you need to install tools and set environment variables correctly following the section: https://github.com/ruby/ruby.wasm#dependencies
Since the step is complicated, I don't want to write it down in a natural language for maintainability. I hope the Dockerfile script and CI configuration would help you to understand the build steps.
from ruby.wasm.
Running rake build:head-wasm32-unknown-wasi-full
is absurdly slow for me (probably due to virtualization, this is on a MacBook M1 Max). The command has been running for hours (still showing progress). Once I made sure it works I'll try to build without docker and can report back.
from ruby.wasm.
I've updated the build system to install dependencies automatically on demand, and it's now docker-free. Also added build instructions in CONTRIBUTING.md.
Feel free to re-open this issue if there is something missed.
from ruby.wasm.
Related Issues (20)
- zlib building issue HOT 1
- rbwasm build fails due to LDFLAGS misconfiguration HOT 2
- Unable to use any CDN for ESM HOT 5
- Error on <non-js-value> == <js-value> HOT 2
- [FAQ] Is it possible to install simple gems? If not, how to simulate doing so?
- [FAQ] Primary authors and / or maintainers HOT 1
- Writing to console.log specifically HOT 2
- [FAQ] How to find out the most recent URL to ruby wasm browser.script.life.js? HOT 1
- Accessing files and directories?
- Error requiring bundler HOT 3
- `VALUE` should not be used as object identity
- Gems with native extensions HOT 6
- `no implicit conversion of nil into Integer (TypeError)`
- jco is not found on build HOT 7
- `JS::Object#await` is unavailable inside Proc converted into JS closure
- "js" gem fails to install on M1 Mac HOT 4
- Request: add another example, but showing how to use a gem
- null function or function signature mismatch HOT 5
- uwasi instread of browser_wasi_shim HOT 3
- Better build orchestration
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ruby.wasm.