Problem with ExecJS in PowerPC Debian/Linux (asset pipeline)

Hello,

I’m trying to migrate a rails prototype application on a Mac Mini G4
PowerPC running Debian. Not sure if this ML is the best place for this
kind of thread, but I’ll give it a go. If someone thinks there’s a
better place to discuss this issue please let me know.

I compiled ‘Node.js’ manually from Github[1] which allowed ‘ExecJS’[2]
to be compiled successfully. Now the application runs on the server but
I can’t compile the ‘assets’. Here is the error:


atma@mini:/usr/share/nginx/www/poly3$ bundle exec rake assets:precompile
–trace

** Invoke assets:precompile (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment (first_time)
** Execute environment
** Execute assets:precompile
rake aborted!
ExecJS::RuntimeError: Illegal instruction

(in
/usr/local/rvm/gems/ruby-2.1.0/gems/turbolinks-2.2.2/lib/assets/javascripts/turbolinks.js.coffee)/usr/local/rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs/external_runtime.rb:142:in
exec_runtime' /usr/local/rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs/external_runtime.rb:28:in block in exec’
/usr/local/rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs/external_runtime.rb:41:in
compile_to_tempfile' /usr/local/rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs/external_runtime.rb:27:in exec’
/usr/local/rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs/external_runtime.rb:19:in
eval' /usr/local/rvm/gems/ruby-2.1.0/gems/execjs-2.0.2/lib/execjs/external_runtime.rb:33:in call’
/usr/local/rvm/gems/ruby-2.1.0/gems/coffee-script-2.2.0/lib/coffee_script.rb:57:in
compile' /usr/local/rvm/gems/ruby-2.1.0/gems/tilt-1.4.1/lib/tilt/coffee.rb:46:in evaluate’
/usr/local/rvm/gems/ruby-2.1.0/gems/tilt-1.4.1/lib/tilt/template.rb:103:in
render' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/context.rb:197:in block in evaluate’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/context.rb:194:in
each' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/context.rb:194:in evaluate’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/processed_asset.rb:12:in
initialize' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:374:in new’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:374:in
block in build_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:395:in circular_call_protection’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:373:in
build_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:94:in block in build_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/caching.rb:58:in
cache_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:93:in build_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:287:in
find_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:61:in find_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/processed_asset.rb:111:in
block in resolve_dependencies' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/processed_asset.rb:105:in each’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/processed_asset.rb:105:in
resolve_dependencies' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/processed_asset.rb:97:in build_required_assets’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/processed_asset.rb:16:in
initialize' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:374:in new’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:374:in
block in build_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:395:in circular_call_protection’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:373:in
build_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:94:in block in build_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/caching.rb:58:in
cache_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:93:in build_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:287:in
find_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:61:in find_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/bundled_asset.rb:16:in
initialize' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:377:in new’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:377:in
build_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:94:in block in build_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/caching.rb:58:in
cache_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:93:in build_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/base.rb:287:in
find_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/index.rb:61:in find_asset’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/manifest.rb:211:in
block in find_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/manifest.rb:257:in benchmark’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/manifest.rb:210:in
find_asset' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/manifest.rb:119:in block in compile’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/manifest.rb:118:in
each' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/sprockets/manifest.rb:118:in compile’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-rails-2.0.1/lib/sprockets/rails/task.rb:60:in
block (3 levels) in define' /usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-2.11.0/lib/rake/sprocketstask.rb:146:in with_logger’
/usr/local/rvm/gems/ruby-2.1.0/gems/sprockets-rails-2.0.1/lib/sprockets/rails/task.rb:59:in
block (2 levels) in define' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:240:in call’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:240:in
block in execute' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:235:in each’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:235:in
execute' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:179:in block in invoke_with_call_chain’
/usr/local/rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/monitor.rb:211:in
mon_synchronize' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:172:in invoke_with_call_chain’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/task.rb:165:in
invoke' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:150:in invoke_task’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:106:in
block (2 levels) in top_level' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:106:in each’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:106:in
block in top_level' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:115:in run_with_threads’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:100:in
top_level' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:78:in block in run’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:176:in
standard_exception_handling' /usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/lib/rake/application.rb:75:in run’
/usr/local/rvm/gems/ruby-2.1.0/gems/rake-10.3.1/bin/rake:33:in <top (required)>' /usr/local/rvm/gems/ruby-2.1.0/bin/rake:23:in load’
/usr/local/rvm/gems/ruby-2.1.0/bin/rake:23:in <main>' /usr/local/rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in eval’
/usr/local/rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `’
Tasks: TOP => assets:precompile

I have already tried all the solutions listed in the SO thread[3] but
nothing seems to work for me. I think it has something to do with the
architecture but I’m not sure. Any tips or hints please share.

Best regards,

[1] GitHub - ibmruntimes/v8ppc: Port of Google V8 javascript engine to PowerPC®
[2] GitHub - sstephenson/execjs: Run JavaScript code from Ruby
[3]
javascript - ExecJS::RuntimeError on Windows trying to follow rubytutorial - Stack Overflow

Panagiotis (atmosx) Atmatzidis

email: [email protected]
URL: http://www.convalesco.org
GnuPG ID: 0x1A7BFEC5
gpg --keyserver pgp.mit.edu --recv-keys 1A7BFEC5

“As you set out for Ithaca, hope the voyage is a long one, full of
adventure, full of discovery […]” - C. P. Cavafy