在我的 Ruby on Rails 应用程序上运行捆绑安装在 sqlite3 和 nio4r 上生成错误

问题描述 投票:0回答:1

在我的 Ruby on Rails 项目上运行

bundle install
在我之前的计算机 (macOS 11 Big Sur) 上运行成功。但是,在这台新计算机(带有 M3 Max 芯片的 macOS 14 Sonoma)上,
bundle install
命令返回以下错误:

$ bundle install

Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Using rake 13.0.6
Using concurrent-ruby 1.2.3
Using minitest 5.23.1
Using thread_safe 0.3.6
Using builder 3.2.4
Using erubi 1.12.0
Using mini_portile2 2.8.2
Using racc 1.6.2
Using crass 1.0.6
Using rack 2.2.7
Using nio4r 2.5.8
Using websocket-extensions 0.1.5
Using mini_mime 1.1.5
Using date 3.3.1
Using timeout 0.3.1
Using arel 9.0.0
Using multi_json 1.15.0
Using method_source 1.0.0
Using thor 1.2.2
Using marcel 1.0.2
Using public_suffix 5.0.3
Using anbt-sql-formatter 0.0.7
Using ast 2.4.2
Using execjs 2.8.1
Using awesome_print 1.9.2
Using bcrypt 3.1.18
Using benchmark-ips 2.9.3
Using rouge 4.1.1
Using bindex 0.8.1
Using debug_inspector 1.1.0
Using ffi 1.15.5
Using will_paginate 3.3.1
Using brakeman 5.2.1
Using uniform_notifier 1.14.2
Using bundler 2.1.4
Using byebug 11.1.3
Using matrix 0.4.2
Using regexp_parser 2.8.1
Using cascade-deleter 0.1.1
Using htmlentities 4.3.4
Using rubyzip 1.3.0
Using childprocess 4.1.0
Using choice 0.2.0
Using numerizer 0.1.1
Using chunky_png 1.4.0
Using climate_control 0.2.0
Using coderay 1.1.3
Using coffee-script-source 1.12.2
Using colorize 0.8.1
Using connection_pool 2.4.1
Using daemons 1.4.1
Using database_cleaner-core 2.0.1
Using dead_end 3.1.1
Using memory_profiler 1.0.0
Using mini_histogram 0.3.1
Using ruby-statistics 3.0.0
Using diff-lcs 1.5.0
Using docile 1.4.0
Using thread 0.2.2
Using erubis 2.7.0
Using eventmachine 1.2.7
Using faraday-em_http 1.0.0
Using faraday-em_synchrony 1.0.0
Using faraday-excon 1.1.0
Using faraday-httpclient 1.0.1
Using multipart-post 2.3.0
Using faraday-net_http 1.0.1
Using faraday-net_http_persistent 1.2.0
Using faraday-patron 1.0.0
Using faraday-rack 1.0.0
Using faraday-retry 1.0.3
Using ruby2_keywords 0.0.5
Using sexp_processor 4.16.0
Using path_expander 1.1.0
Using formatador 1.1.0
Using raabro 1.4.0
Using rspec-support 3.11.1
Using ruby-progressbar 1.13.0
Using multi_xml 0.6.0
Using unicode-display_width 2.4.2
Using rb-fsevent 0.11.2
Using lumberjack 1.2.8
Using nenv 0.3.0
Using shellany 0.0.1
Using guard-compat 1.2.1
Using highline 2.0.3
Using sync 0.5.0
Using json 2.6.3
Using jwt 2.5.0
Using language_server-protocol 3.17.0.3
Using mime-types-data 3.2022.0105
Using mysql2 0.5.4
Using newrelic_rpm 9.2.2
Using oj 3.13.11
Using parallel 1.23.0
Using parsecs 0.14.1
Using rainbow 3.1.1
Using rexml 3.2.6
Using rugged 1.7.1
Using railroady 1.6.0
Using redis 4.6.0
Using remotipart 1.4.4
Using ruby-ole 1.2.12.2
Using rqrcode_core 1.2.0
Using ruby-filemagic 0.7.3
Using tilt 2.0.10
Using secure_headers 6.3.3
Using seed_migration 1.2.3
Using simple_command 0.1.0
Using simplecov-html 0.12.3
Using simplecov_json_formatter 0.1.4
Using temple 0.8.2
Using spring 4.0.0
Using stringex 2.8.5
Using suggest_rb 0.5.2
Using test-prof 1.2.3
Using timecop 0.9.4
Using turbolinks-source 5.2.0
Using wisper 2.0.1
Using wkhtmltopdf-binary 0.12.6.6
Fetching sqlite3 1.4.2
Using i18n 1.14.5
Using rack-test 2.1.0
Using tzinfo 1.2.11
Using websocket-driver 0.7.5
Using net-protocol 0.2.1
Using addressable 2.8.5
Using request_store 1.5.1
Using autoprefixer-rails 10.4.2.0
Using better_errors 2.10.0
Using binding_of_caller 1.0.0
Using sassc 2.4.0
Using bootstrap-will_paginate 1.0.0
Using chronic_duration 0.10.6
Using coffee-script 2.4.1
Using get_process_mem 0.2.7
Using heapy 0.2.0
Using easy_translate 0.5.1
Using sprockets 4.1.1
Using faraday-multipart 1.0.4
Using ruby_parser 3.18.1
Using figaro 1.2.0
Using rspec-core 3.11.0
Using httparty 0.21.0
Using terminal-table 3.0.2
Using rb-inotify 0.10.1
Using notiffany 0.1.3
Using pry 0.13.1
Using rspec-expectations 3.11.1
Using rspec-mocks 3.11.0
Using parser 3.2.2.3
Using tins 1.31.0
Using spoon 0.0.6
Using rack-contrib 2.3.0
Using mime-types 3.4.1
Using mock_redis 0.36.0
Using terrapin 0.6.0
Using parallel_tests 4.2.1
Using rack-cors 1.1.1
Using ruby-graphviz 1.2.5
Using spreadsheet 1.3.0
Using rqrcode 2.2.0
Using selenium-webdriver 4.1.0
Using sidekiq 6.4.1
Using simplecov 0.21.2
Using slim 4.1.0
Using spring-commands-rspec 1.0.4
Using thin 1.8.1
Using turbolinks 5.2.1
Using uglifier 4.2.0
Using money 6.16.0
Using faker 3.2.0
Using i18n-active_record 1.1.0
Using i18n-js 3.9.1
Using nokogiri 1.15.2 (arm64-darwin)
Using activesupport 5.2.8.1
Using loofah 2.21.3
Using net-imap 0.3.2
Using net-pop 0.1.2
Using net-smtp 0.3.3
Using bootstrap-sass 3.4.1
Using xpath 3.2.0
Using caxlsx 3.1.1
Using derailed_benchmarks 2.1.1
Using launchy 2.5.2
Using et-orbi 1.2.7
Using faraday 1.10.3
Using fasterer 0.9.0
Using flay 2.12.1
Using fuubar 2.5.1
Using gitlab 4.19.0
Using listen 3.8.0
Using rspec 3.11.0
Using term-ansicolor 1.7.1
Using interactive_editor 0.0.12
Using mimemagic 0.3.10
Using rubocop-ast 1.29.0
Using pry-byebug 3.9.0
Using pry-rails 0.3.9
Using roo 2.8.3
Using rspec-collection_matchers 1.2.0
Using sidekiq-status 2.1.3
Using the_notification 0.5.1
Using tzinfo-data 1.2023.3
Using inflections 4.1.0 from https://github.com/niltonvasques/inflections.git (at iss17-brazilian-portuguese-inflections@832e15f)
Using montrose 0.11.2
Using sawyer 0.8.2
Using rubocop 1.54.2
Using rabl 0.16.1
Using roo-xls 1.2.0
Using sentry-raven 3.1.2
Using shoulda-matchers 5.3.0
Using wicked_pdf 2.8.0
Using rails-dom-testing 2.0.3
Using rails-html-sanitizer 1.6.0
Using globalid 1.1.0
Using mail 2.8.0
Using activemodel 5.2.8.1
Using bullet 7.0.1
Using capybara 3.36.0
Using factory_bot 5.2.0
Using fugit 1.5.3
Using guard 2.18.0
Using i18n-tasks 0.9.12
Using actionview 5.2.8.1
Using activejob 5.2.8.1
Using activerecord 5.2.8.1
Using email_spec 2.2.2
Using guard-rspec 4.7.3
Using octokit 4.21.0
Using paperclip 6.1.0
Using rubocop-capybara 2.18.0
Using rubocop-factory_bot 2.24.0
Using rubocop-performance 1.19.1
Using rubocop-rails 2.9.1
Using sidekiq-cron 1.6.0
Using actionpack 5.2.8.1
Using activerecord-import 1.3.0
Using audited 5.3.3
Using database_cleaner-active_record 2.0.1
Using hierarchy-tree 0.3.5
Using jbuilder 2.11.5
Using pp_sql 1.1.0
Using pronto 0.11.1
Using rails-erd 1.6.1
Using rubocop-rspec 2.24.0
Using validations-skipper 0.1.1 from https://github.com/oxeanbits/validations-skipper.git (at master@36116d8)
Using wisper-activerecord 1.0.0
Using actioncable 5.2.8.1
Using actionmailer 5.2.8.1
Using railties 5.2.8.1
Using activestorage 5.2.8.1
Using caxlsx_rails 0.6.3
Using database_cleaner 2.0.1
Using deep-cloning 0.3.0
Using sprockets-rails 3.4.2
Using gon 6.4.0
Using pronto-brakeman 0.11.1
Using pronto-eslint_npm 0.11.0
Using pronto-fasterer 0.11.1
Using pronto-flay 0.11.1
Using pronto-rubocop 0.11.5
Using activerecord-session_store 2.0.0
Using coffee-rails 4.2.2
Using rails 5.2.8.1
Using factory_bot_rails 5.2.0
Using font-awesome-rails 4.7.0.8
Using jquery-rails 4.5.1
Using js-routes 1.4.1
Using meta_request 0.7.3
Using rails-i18n 5.1.3
Using responders 3.1.0
Using rspec-rails 5.1.2
Using sassc-rails 2.1.2
Using scenic 1.6.0
Using teaspoon 1.3.0 from https://github.com/jejacks0n/teaspoon.git (at master@a168748)
Using web-console 3.7.0
Using eav_hashes 1.1.0
Using sass-rails 6.0.0
Using scenic-mysql_adapter 1.0.1
Using to_slug_param 1.8
Using yaml_db 0.7.0
Using the_role_api 3.9.1 from https://github.com/niltonvasques/the_role_api.git (at upgrade-rails@352317f)
Using the_role_management_panel 3.8.3 from https://github.com/oxeanbits/the_role_management_panel.git (at master@36c98ae)
Using teaspoon-mocha 2.3.3 from https://github.com/jejacks0n/teaspoon.git (at master@a168748)
Installing sqlite3 1.4.2 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /Users/victorcosta/Desktop/repositories/dpms-api-norway/vendor/bundle/ruby/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
/Users/victorcosta/.asdf/installs/ruby/2.7.8/bin/ruby -I /Users/victorcosta/.asdf/installs/ruby/2.7.8/lib/ruby/2.7.0 -r ./siteconf20240618-69783-na3gvd.rb
extconf.rb --with-sqlite3-include\=/path/to/sqlite3/include --with-sqlite3-lib\=/path/to/sqlite3/lib CFLAGS\=-Wno-error\=incompatible-function-pointer-types\
-Wno-error\=int-conversion
checking for sqlite3.h... yes
checking for pthread_create() in -lpthread... yes
checking for -ldl... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for rb_integer_pack()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_backup_init()... yes
checking for sqlite3_column_database_name()... yes
checking for sqlite3_enable_load_extension()... no
checking for sqlite3_load_extension()... no
checking for sqlite3_open_v2()... yes
checking for sqlite3_prepare_v2()... yes
checking for sqlite3_int64 in sqlite3.h... yes
checking for sqlite3_uint64 in sqlite3.h... yes
creating Makefile

current directory: /Users/victorcosta/Desktop/repositories/dpms-api-norway/vendor/bundle/ruby/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
make "DESTDIR=" clean

current directory: /Users/victorcosta/Desktop/repositories/dpms-api-norway/vendor/bundle/ruby/2.7.0/gems/sqlite3-1.4.2/ext/sqlite3
make "DESTDIR="
compiling aggregator.c
compiling backup.c
compiling database.c
database.c:141:3: warning: 'sqlite3_trace' is deprecated: first deprecated in macOS 10.12 [-Wdeprecated-declarations]
  sqlite3_trace(ctx->db, NIL_P(block) ? NULL : tracefunc, (void *)self);
  ^~~~~~~~~~~~~
  sqlite3_trace_v2
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sqlite3.h:3326:36: note: 'sqlite3_trace' has been explicitly marked deprecated here
SQLITE_API SQLITE_DEPRECATED void *sqlite3_trace(
                                   ^
database.c:726:57: error: incompatible function pointer types passing 'int (VALUE, int, char **, char **)' (aka 'int (unsigned long, int, char **, char **)') to
parameter of type 'int (*)(void *, int, char **, char **)' [-Wincompatible-function-pointer-types]
    status = sqlite3_exec(ctx->db, StringValuePtr(sql), hash_callback_function, callback_ary, &errMsg);
                                                        ^~~~~~~~~~~~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sqlite3.h:435:9: note: passing argument to parameter 'callback' here
  int (*callback)(void*,int,char**,char**),  /* Callback function */
        ^
database.c:726:81: error: incompatible integer to pointer conversion passing 'VALUE' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion]
    status = sqlite3_exec(ctx->db, StringValuePtr(sql), hash_callback_function, callback_ary, &errMsg);
                                                                                ^~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sqlite3.h:436:9: note: passing argument to parameter here
  void *,                                    /* 1st argument to callback */
        ^
database.c:728:57: error: incompatible function pointer types passing 'int (VALUE, int, char **, char **)' (aka 'int (unsigned long, int, char **, char **)') to
parameter of type 'int (*)(void *, int, char **, char **)' [-Wincompatible-function-pointer-types]
    status = sqlite3_exec(ctx->db, StringValuePtr(sql), regular_callback_function, callback_ary, &errMsg);
                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sqlite3.h:435:9: note: passing argument to parameter 'callback' here
  int (*callback)(void*,int,char**,char**),  /* Callback function */
        ^
database.c:728:84: error: incompatible integer to pointer conversion passing 'VALUE' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion]
    status = sqlite3_exec(ctx->db, StringValuePtr(sql), regular_callback_function, callback_ary, &errMsg);
                                                                                   ^~~~~~~~~~~~
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sqlite3.h:436:9: note: passing argument to parameter here
  void *,                                    /* 1st argument to callback */
        ^
1 warning and 4 errors generated.
make: *** [database.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/victorcosta/Desktop/repositories/dpms-api-norway/vendor/bundle/ruby/2.7.0/gems/sqlite3-1.4.2 for inspection.
Results logged to /Users/victorcosta/Desktop/repositories/dpms-api-norway/vendor/bundle/ruby/2.7.0/extensions/arm64-darwin-23/2.7.0/sqlite3-1.4.2/gem_make.out

An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  sqlite3

从上面我们可以看出,主要错误是:

  1. -Wno-error=incompatible-function-pointer-types
  2. -Wno-error=int-conversion

我试图通过将其添加到

.bundle/config
文件来忽略这些错误:

BUNDLE_BUILD__NIO4R: "--with-cflags=-Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion"
BUNDLE_BUILD__SQLITE3: "--with-sqlite3-include=/path/to/sqlite3/include --with-sqlite3-lib=/path/to/sqlite3/lib CFLAGS='-Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion'"

仍然出现同样的错误...

我还尝试在本地安装

nio4r
sqlite3
gems,使用以下方法跳过上述错误:

sudo gem install nio4r -v '2.5.8' --source 'https://rubygems.org/' -- --with-cflags="-Wno-error=incompatible-function-pointer-types"
sudo gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/' -- --with-cflags="-Wno-error=int-conversion -Wno-error=incompatible-function-pointer-types"

这些gem是通过上述方法在本地安装的,但是这些gem在通过

bundle install
安装时仍然出现错误,这导致服务器无法运行(
rails s
)。

配置

  • Ruby 版本
$ ruby -v
ruby 2.7.8p225 (2023-03-30 revision 1f4d455848) [arm64-darwin23]
  • 宝石档案
source 'https://rubygems.org'

# ruby 2.7.5

# Gem to handle webhook events
gem 'wisper'
gem 'wisper-activerecord'

gem 'hierarchy-tree', '~> 0.3.5'

# Gem to add background workers
gem 'sidekiq'
# Gem to get job status
gem 'sidekiq-status'
# Gem to schedule jobs
gem 'sidekiq-cron', '~> 1.6.0'

# Gem for auditions queries
gem "audited"

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.2'
#gem 'actionpack', '~> 5.0.0'

gem 'mysql2', '~> 0.5.4'

# Use SCSS for stylesheets
gem 'sass-rails'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails'

gem 'rack-cors'
gem 'js-routes', '1.4.1'

# A gem to parse equations written in C++
gem 'parsecs', '0.14.1'

# Allows classes to ignore desired validations
gem 'validations-skipper', git: 'https://github.com/oxeanbits/validations-skipper.git'

# Simple chaining system for building recurrences
gem 'montrose'

# Gem to handle eav columns
gem 'eav_hashes'
### FRONT END GEMS
gem 'bootstrap-sass'
gem 'bootstrap-will_paginate'
# Use Font-Awensomes for icons
gem 'font-awesome-rails'

gem 'rqrcode'

gem 'inflections', git: 'https://github.com/niltonvasques/inflections.git',
                   branch: 'iss17-brazilian-portuguese-inflections'

# Responders dry up the actions
gem 'responders'

gem 'simple_command'

# Mime types
gem 'mime-types'

# The role gem enable a access control management
# gem 'the_role', '~> 3.0.0'
gem 'the_role_api', git: 'https://github.com/niltonvasques/the_role_api.git',
                   branch: 'upgrade-rails'
gem 'the_role_management_panel', git: 'https://github.com/oxeanbits/the_role_management_panel.git'
# gem 'the_role_management_panel', '~> 3.0.0'

gem 'i18n-js'
gem 'i18n-active_record', require: 'i18n/active_record'

# Faker gem allow us, fill database with some users
gem 'faker'

# USeful for detect file type and avoid exploits to be uploaded to server
gem 'roo'
gem 'roo-xls'
gem 'ruby-filemagic'

# Handle upload documents
gem 'paperclip'
gem 'remotipart'
# Use jquery as the JavaScript library
gem 'jquery-rails', '4.5.1'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder'
gem 'oj'
gem 'rabl'

# JSON web token
gem 'jwt'

# Fix JSON encoding decimal to string
#gem 'activesupport-json_encoder'

# batch activerecord
gem 'activerecord-import'

# duplicate records
gem 'deep-cloning', '~> 0.3.0'

# bundle exec rake doc:rails generates the API under doc/api.
# TODO: upgrade or find a replacement
# gem 'sdoc', '~> 0.4.0', group: :doc

# Increase cookies store capacity
gem 'activerecord-session_store'
gem 'secure_headers'
gem 'thin'

# Use ActiveModel has_secure_password
# This gem is a used for encrypt password of user, by has_secure_password pattern
gem 'bcrypt'

# Use axlsx and related gems to export excel files from server
gem 'caxlsx'
gem 'caxlsx_rails', '~> 0.6.3'
gem 'rubyzip'

# Send variables from controller to js using gon
gem 'gon'

gem 'yaml_db'

gem 'awesome_print'

gem 'seed_migration'

gem 'money'

gem 'sentry-raven'

gem 'tzinfo-data'

# Create and manage database views in Rails
gem 'scenic'
gem 'scenic-mysql_adapter'

# Enable to generate PDF files
gem 'wicked_pdf'
gem 'wkhtmltopdf-binary'

group :production do
  gem 'newrelic_rpm', '~> 9.2'
end

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug'
  gem 'email_spec'
  gem 'capybara'

  gem 'rspec-collection_matchers'
  gem 'rspec-rails'
  gem 'teaspoon', git: 'https://github.com/jejacks0n/teaspoon.git', branch: :master
  gem 'teaspoon-mocha'

  gem 'factory_bot_rails', require: false

  gem 'database_cleaner'

  gem 'guard-rspec'
  gem 'rb-fsevent' if `uname` =~ /Darwin/
  gem 'spring-commands-rspec'

  gem 'fuubar'

  # adding env variables via configuration file
  gem 'figaro'

  gem 'parallel_tests'

  # Pry is a full replacement for the basic IRB with more power.
  # Call 'binding.pry' anywhere in the code for debugging with pry.
  gem 'pry-rails'

  # Adds step-by-step debugging and stack navigation capabilities to pry using byebug.
  gem 'pry-byebug'

  # Generates Rails 3/4/5 model (ActiveRecord, Mongoid, Datamapper) and controller UML diagrams
  gem 'railroady'

  # Suggests a method that returns the desired result, e.g. [1,2,3].what_returns? 1 => :first
  gem 'suggest_rb'
end

group :test do
  gem 'rspec-mocks' # for rspec-mocks only
  gem 'shoulda-matchers'

  gem 'mock_redis'
  # Test coverage gems
  gem 'simplecov', require: false
  gem 'selenium-webdriver'

  # Ruby test profiler
  gem 'test-prof', '~> 1.0'
end

group :development do
  # Access an IRB console on exception pages or by using <%= console %> in views
  gem 'web-console'

  gem 'sqlite3'
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'

  gem 'rails-erd'

  gem 'i18n-tasks', '0.9.12'

  gem 'octokit', '4.21.0'
  gem 'pronto'
  gem 'pronto-brakeman' # Analyze security issues
  gem 'pronto-eslint_npm' # JavaScript linter
  gem 'pronto-fasterer' # Analyze performance issues
  gem 'pronto-flay' # Analyze code replication
  gem 'pronto-rubocop', '0.11.5' # Analyze code style and bad smells
  gem 'rubocop', '1.54.2'
  gem 'rubocop-performance'
  gem 'rubocop-rails'
  gem 'rubocop-rspec'

  # rails benchmarking like ram-usage
  gem 'derailed_benchmarks'

  # identify n+1 query and loss of preloading stuff
  gem 'bullet'

  # Better Errors replaces the standard Rails error page with a better and more useful error page
  gem 'better_errors'

  # binding_of_caller is necessary to use Better Errors' advanced features
  # => REPL, local/instance variable inspection, pretty stack frame names)
  gem 'binding_of_caller'

  gem 'pp_sql'

  gem 'interactive_editor'

  # Rails panels adds a number of useful features to the Google Chrome inspector
  gem 'meta_request'
  # Enable cascade deletion (hard and soft)
  gem 'cascade-deleter', '~> 0.1.1'
end

gem "timecop"
  • 机器

我当前的机器是配备 M3 Max 芯片的 Macbook,操作系统是 Sonoma 14.4 (23E214)。

enter image description here

c ruby-on-rails ruby macos
1个回答
0
投票

在我看来,您很可能错误地配置了捆绑器构建选项。最好用

bundle config
来做。

我想这就是你想要的:

bundle config --local build.nio4r --with-cflags="-Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion"
bundle config --local build.sqlite3 --with-sqlite3-include=/path/to/sqlite3/include --with-sqlite3-lib=/path/to/sqlite3/lib --with-cflags="-Wno-error=incompatible-function-pointer-types -Wno-error=int-conversion"

然后您可以检查配置是否已正确保存:

bundle config
© www.soinside.com 2019 - 2024. All rights reserved.