-
Notifications
You must be signed in to change notification settings - Fork 93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
mini_racer not starting: ZSt28__throw_bad_array_new_lengthv: symbol not found (LoadError)
#295
Comments
First, Ruby 2.7 is EOL and not (actively) supported by mini_racer, see https://github.com/rubyjs/mini_racer#supported-ruby-versions--troubleshooting. Also: Please make sure to run with the latest version of Rubygems ( Alpine (musl libc) is unfortunately known for causing quite a few issues over the years 😞 |
See rubyjs/libv8#261 |
Hey @niko-zvt 👋 I'm assuming you're using bundler? Providing
indicates that you haven't set linux/arm64 as a platform in your Gemfile (I'm guessing that arm64 is your platform). Please take a look at Supported Ruby Versions & Troubleshooting in the README. |
@tisba
I tried both with and without the See
|
Are you sure you run docker with Your example works on my M1 Pro (Sonoma 14.1) without any warning or errors. |
Where do you get the Gemfile.lock from, @niko-zvt? Is that the lock file generated into the docker image? When I use your Dockerfile 1:1 and diff it against the lockfile you've provided, I get the following diff. It is not surprising, as in the Dockerfile you added --- /srv/jekyll/Gemfile.lock.issue-295
+++ /srv/jekyll/Gemfile.lock
@@ -45,6 +45,8 @@
ffi (1.16.3)
forwardable-extended (2.6.0)
gemoji (4.1.0)
+ google-protobuf (3.25.0-arm64-darwin)
+ google-protobuf (3.25.0-x86_64-darwin)
google-protobuf (3.25.0-x86_64-linux)
html-pipeline (2.14.3)
activesupport (>= 2)
@@ -116,6 +118,8 @@
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
latex-decode (0.4.0)
+ libv8-node (18.16.0.0-arm64-darwin)
+ libv8-node (18.16.0.0-x86_64-darwin)
libv8-node (18.16.0.0-x86_64-linux-musl)
liquid (4.0.4)
listen (3.8.0)
@@ -132,6 +136,10 @@
multi_xml (0.6.0)
mutex_m (0.1.2)
namae (1.1.1)
+ nokogiri (1.15.4-arm64-darwin)
+ racc (~> 1.4)
+ nokogiri (1.15.4-x86_64-darwin)
+ racc (~> 1.4)
nokogiri (1.15.4-x86_64-linux)
racc (~> 1.4)
pathutil (0.16.2)
@@ -145,6 +153,10 @@
rouge (4.2.0)
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
+ sass-embedded (1.69.5-arm64-darwin)
+ google-protobuf (~> 3.23)
+ sass-embedded (1.69.5-x86_64-darwin)
+ google-protobuf (~> 3.23)
sass-embedded (1.69.5-x86_64-linux-musl)
google-protobuf (~> 3.23)
sax-machine (1.3.2)
@@ -159,6 +171,7 @@
webrick (1.8.1)
PLATFORMS
+ universal-darwin-8
x86_64-linux-musl |
@tisba, Hello! Yes, I generate Gemfile.lock inside docker container.
Input:
Output:
|
You also need to run the container with the correct platform But I'm getting the same error now, not sure why I missed that before, sorry. It's not a general mini racer / alpine issue though. I used the following minimal example to check:
I can install and run mini_racer just fine with it (tested with a simple tl;dr The jekyll image seems quite dated and is based on a 2 year old alpine 3.15. I'm not entirely sure what's going on, but since it's working with alpine 3.18 (what |
ARM proc are so much fun ... |
Hi folks, I'm trying to use mini_racer in an environment in a Alpine LInux Docker container, with Ruby 2.7.2 and Rails 6.1.1. I understand this issue might be related to #63, but bear with me for a second.
When running
bundle install
, this is what I got:The above messages led me to believe that there are in fact prebuilt libraries for this environment and everything would be okay, but when trying to start Rails afterwards...
_ZSt28__throw_bad_array_new_lengthv: symbol not found (LoadError)
:(I can provide the full stack trace if necessary).
Is this a case of mini_racer and/or libv8-node not working in Alpine, or should this setup be working and it's something else? Thanks.
The text was updated successfully, but these errors were encountered: