質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Arch Linux

arch(アーク)は、バージョン管理システムです。 また、リポジトリ(アーカイブ)操作を行えるツールの総称として扱われています。

Q&A

解決済

2回答

7638閲覧

rails s でffiが存在しないとエラーが出る

muranokami

総合スコア33

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Arch Linux

arch(アーク)は、バージョン管理システムです。 また、リポジトリ(アーカイブ)操作を行えるツールの総称として扱われています。

0グッド

0クリップ

投稿2020/05/03 05:26

####起きている問題
rails 6.0.2.2でrails sをしたところ、

bin/rails: Bootsnap::LoadPathCache::FallbackScan ... 1: from /usr/lib/ruby/gems/2.7.0/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi' /usr/lib/ruby/gems/2.7.0/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require': cannot load such file -- 2.7/ffi_c (LoadError) ... 1: from /usr/lib/ruby/gems/2.7.0/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi' /usr/lib/ruby/gems/2.7.0/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require': libffi.so.6: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0/ffi-1.12.2/ffi_c.so (LoadError)

とエラーが出てしまいます...

####問題発生前にやったこと
git clone で空のレポジトリをとってくる(ディレクトリ名をAとする)
A内でrails new B --api
mv B/* .
rm -rf B
rails s

####原因かはわからないけど気になっていること
manjaroを使っている
gemfileから削除したり、gemfile.lockを削除してからbundle installしたりしてもgemが再インストールされずUsingになってしまう

####gemfile

source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } ruby '2.7.1' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '~> 6.0.2', '>= 6.0.2.2' # Use sqlite3 as the database for Active Record gem 'sqlite3', '~> 1.4' # Use Puma as the app server gem 'puma', '~> 4.1' # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder # gem 'jbuilder', '~> 2.7' # Use Redis adapter to run Action Cable in production # gem 'redis', '~> 4.0' # Use Active Model has_secure_password # gem 'bcrypt', '~> 3.1.7' # Use Active Storage variant # gem 'image_processing', '~> 1.2' # Reduces boot times through caching; required in config/boot.rb gem 'bootsnap', '>= 1.4.2', require: false # Use Rack CORS for handling Cross-Origin Resource Sharing (CORS), making cross-origin AJAX possible # gem 'rack-cors' group :development, :test do # Call 'byebug' anywhere in the code to stop execution and get a debugger console gem 'byebug', platforms: [:mri, :mingw, :x64_mingw] end group :development do gem 'listen', '>= 3.0.5', '< 3.2' # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring gem 'spring' gem 'spring-watcher-listen', '~> 2.0.0' end # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

どなたかエラーの原因と対処法を教えていただけないでしょうか...?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

gemがlibffi6を参照していると思うんですが、libffi7に更新されていて、存在しないためエラーになっているっぽいです。

OSによって場所がことなるんですが、Gemが対応するまで、sym linkを張って対応するのがいいかと。

alpine linux 3.12 で同様の問題が発生して、
こちらを参考にして、解決しました。
https://www.chazine.com/archives/4166

投稿2021/01/27 13:21

tos-miyake

総合スコア23

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

muranokami

2021/01/30 13:33

大分前のものを見つけてくださってありがとうございます! 何かしらで解決したのか覚えていませんが今は該当の箇所に触れていないので質問はクローズします 掘り出してくださったということでベストアンサーつけておきます
guest

0

/usr/lib/ruby/gems/2.7.0/gems/bootsnap-1.4.6/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require': libffi.so.6: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0/ffi-1.12.2/ffi_c.so (LoadError)

ffi関連のライブラリが見つからないエラーがでています。
libffi関連の開発パッケージ(おそらくlibffi-dev)をインストールしてみてください。
たとえばubuntuならaptコマンドで検索してインストールできます。

pi@raspberrypi1:~ $ apt search libffi ソート中... 完了 全文検索... 完了 libffi-dev/stable,now 3.2.1-9 armhf [インストール済み] Foreign Function Interface library (development files)

投稿2020/05/03 05:36

technocore

総合スコア7337

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

muranokami

2020/05/03 12:04

ご回答ありがとうございます! 試してみたのですが、 `sudo pacman -S libffi` に対して libffi-3.3-3 は最新です と出るので該当しないようです... 再インストールで入れてみましたが結果は変わりませんでした...
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問