Skip to content
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

[Ruby] Rails console / server won't start on Mac: Typelib file for namespace 'Arrow' (any version) not found #43701

Closed
bayornet opened this issue Aug 14, 2024 · 2 comments

Comments

@bayornet
Copy link

bayornet commented Aug 14, 2024

Describe the bug, including details regarding any error messages, version, and platform.

Hi

I have installed apache-arrow / apache-arrow-glib and red-arrow / red-parquet gems.

When I try to start a rails console there is an error:

require': Typelib file for namespace 'Arrow' (any version) not found (GObjectIntrospection::RepositoryError::TypelibNotFound) from /ProjectFolder/.bundle/ruby/3.2.0/gems/gobject-introspection-4.2.2/lib/gobject-introspection/loader.rb:40:in load'

rails c
/ProjectFolder/.bundle/ruby/3.2.0/gems/gobject-introspection-4.2.2/lib/gobject-introspection/loader.rb:40:in `require': Typelib file for namespace 'Arrow' (any version) not found (GObjectIntrospection::RepositoryError::TypelibNotFound)
from /ProjectFolder/.bundle/ruby/3.2.0/gems/gobject-introspection-4.2.2/lib/gobject-introspection/loader.rb:40:in `load'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/gobject-introspection-4.2.2/lib/gobject-introspection/loader.rb:25:in `load'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/red-arrow-17.0.0/lib/arrow/loader.rb:24:in `load'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/red-arrow-17.0.0/lib/arrow.rb:29:in `<module:Arrow>'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/red-arrow-17.0.0/lib/arrow.rb:25:in `<top (required)>'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/zeitwerk-2.6.12/lib/zeitwerk/kernel.rb:38:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/activesupport-6.1.7.7/lib/active_support/dependencies.rb:332:in `block in require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/activesupport-6.1.7.7/lib/active_support/dependencies.rb:299:in `load_dependency'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/activesupport-6.1.7.7/lib/active_support/dependencies.rb:332:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/red-parquet-17.0.0/lib/parquet.rb:18:in `<top (required)>'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/zeitwerk-2.6.12/lib/zeitwerk/kernel.rb:38:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/activesupport-6.1.7.7/lib/active_support/dependencies.rb:332:in `block in require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/activesupport-6.1.7.7/lib/active_support/dependencies.rb:299:in `load_dependency'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/activesupport-6.1.7.7/lib/active_support/dependencies.rb:332:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/parqueteur-1.11.0/lib/parqueteur.rb:6:in `<top (required)>'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/zeitwerk-2.6.12/lib/zeitwerk/kernel.rb:38:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/zeitwerk-2.6.12/lib/zeitwerk/kernel.rb:38:in `require'
from /Users/user/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/bundler-2.5.4/lib/bundler/runtime.rb:60:in `block (2 levels) in require'
from /Users/user/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/bundler-2.5.4/lib/bundler/runtime.rb:55:in `each'
from /Users/user/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/bundler-2.5.4/lib/bundler/runtime.rb:55:in `block in require'
from /Users/user/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/bundler-2.5.4/lib/bundler/runtime.rb:44:in `each'
from /Users/user/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/bundler-2.5.4/lib/bundler/runtime.rb:44:in `require'
from /Users/user/.rbenv/versions/3.2.2/lib/ruby/gems/3.2.0/gems/bundler-2.5.4/lib/bundler.rb:187:in `require'
from /ProjectFolder/config/application.rb:21:in `<top (required)>'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/railties-6.1.7.7/lib/rails/command/actions.rb:22:in `require_application!'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/railties-6.1.7.7/lib/rails/command/actions.rb:14:in `require_application_and_environment!'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/railties-6.1.7.7/lib/rails/commands/console/console_command.rb:101:in `perform'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/command.rb:28:in `run'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor/invocation.rb:127:in `invoke_command'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/thor-1.3.0/lib/thor.rb:527:in `dispatch'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/railties-6.1.7.7/lib/rails/command/base.rb:69:in `perform'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/railties-6.1.7.7/lib/rails/command.rb:48:in `invoke'
from /ProjectFolder/.bundle/ruby/3.2.0/gems/railties-6.1.7.7/lib/rails/commands.rb:18:in `<top (required)>'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from <internal:/Users/user/.rbenv/versions/3.2.2/lib/ruby/3.2.0/rubygems/core_ext/kernel_require.rb>:37:in `require'
from bin/rails:4:in `<main>'

OS: macOS Sonoma
Rails: 6.1
Ruby: 3.2

brew info apache-arrow
==> apache-arrow: stable 17.0.0 (bottled), HEAD
Columnar in-memory analytics layer designed to accelerate big data
https://arrow.apache.org/
Installed
/usr/local/Cellar/apache-arrow/17.0.0_2 (588 files, 122.5MB) *...

brew info apache-arrow-glib
==> apache-arrow-glib: stable 17.0.0 (bottled), HEAD
GLib bindings for Apache Arrow
https://arrow.apache.org/
Installed
/usr/local/Cellar/apache-arrow-glib/17.0.0 (202 files, 6.5MB) *...

bundle info red-arrow
  * red-arrow (17.0.0)
	Summary: Red Arrow is the Ruby bindings of Apache Arrow
	Homepage: https://arrow.apache.org/
	Path: /ProjectFolder/.bundle/ruby/3.2.0/gems/red-arrow-17.0.0
	Reverse Dependencies:
		red-parquet (17.0.0) depends on red-arrow (= 17.0.0)

bundle info red-parquet
  * red-parquet (17.0.0)
	Summary: Red Parquet is the Ruby bindings of Apache Parquet
	Homepage: https://arrow.apache.org/
	Path: /ProjectFolder/.bundle/ruby/3.2.0/gems/red-parquet-17.0.0
	Reverse Dependencies:
		parqueteur (1.11.0) depends on red-parquet (> 10.0)

Component(s)

Ruby

@bayornet
Copy link
Author

Fixed by adding export GI_TYPELIB_PATH=/usr/local/lib/girepository-1.0 to my shell.

@kou
Copy link
Member

kou commented Aug 15, 2024

Yes. export GI_TYPELIB_PATH=$(brew --prefix)/lib/girepository-1.0 is more portable.

@kou kou closed this as completed Aug 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants