Установка bundle не удалась после добавления gem "mysql2" и gem "reverse_markdown"

Я пытаюсь добавить “mysql2” и “reverse_markdown” в свежий контейнер Discourse в файл “Gemfile” для миграции данных с помощью скрипта ipb.

bundle config unset deployment
bundle install

результат:

Gem::Ext::BuildError: ОШИБКА: Не удалось создать нативное расширение gem.

    текущая директория: /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/mysql2-0.5.5/ext/mysql2
/opt/bitnami/ruby/bin/ruby extconf.rb
проверка наличия rb_absint_size()... *** extconf.rb завершилась с ошибкой ***
Не удалось создать Makefile по какой-то причине, вероятно, отсутствуют необходимые
библиотеки и/или заголовочные файлы. Проверьте файл mkmf.log для получения подробностей. Возможно,
вам понадобятся параметры конфигурации.

Предоставленные параметры конфигурации:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/opt/bitnami/ruby/bin/$(RUBY_BASE_NAME)
/opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:490:in `try_do': Компилятор не смог сгенерировать исполняемый файл. (RuntimeError)
Сначала необходимо установить инструменты разработки.

        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:583:in `try_link0'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:601:in `try_link'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:812:in `try_func'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:1116:in `block in have_func'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:989:in `block in checking_for'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:354:in `block (2 levels) in postpone'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:324:in `open'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:354:in `block in postpone'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:324:in `open'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:350:in `postpone'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:988:in `checking_for'
        from /opt/bitnami/ruby/lib/ruby/3.2.0/mkmf.rb:1115:in `have_func'
        from extconf.rb:34:in `<main>'

Чтобы узнать, почему расширение не скомпилировалось, проверьте файл mkmf.log, который можно найти здесь:

  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0-static/mysql2-0.5.5/mkmf.log

extconf завершился с ошибкой, код выхода 1

Файлы gem останутся установленными в /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/mysql2-0.5.5 для проверки.
Результаты записаны в /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0-static/mysql2-0.5.5/gem_make.out

  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/ext/builder.rb:118:in `run'
  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/ext/ext_conf_builder.rb:27:in `build'
  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/ext/builder.rb:186:in `build_extension'
  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/ext/builder.rb:220:in `block in build_extensions'
  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/ext/builder.rb:217:in `each'
  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/ext/builder.rb:217:in `build_extensions'
  /opt/bitnami/ruby/lib/ruby/site_ruby/3.2.0/rubygems/installer.rb:845:in `build_extensions'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/rubygems_gem_installer.rb:72:in `build_extensions'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/rubygems_gem_installer.rb:28:in `install'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/source/rubygems.rb:200:in `install'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/installer/gem_installer.rb:54:in `install'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/installer/gem_installer.rb:16:in `install_from_spec'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/installer/parallel_installer.rb:155:in `do_install'
/opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/installer/parallel_installer.rb:146:in `block in
worker_pool'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/worker.rb:62:in `apply_func'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/worker.rb:57:in `block in process_queue'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/worker.rb:54:in `loop'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/worker.rb:54:in `process_queue'
  /opt/bitnami/discourse/vendor/bundle/ruby/3.2.0/gems/bundler-2.4.1/lib/bundler/worker.rb:90:in `block (2 levels) in create_threads'

Произошла ошибка при установке mysql2 (0.5.5), и Bundler не может продолжить.

В Gemfile:
  mysql2

Bitnami не поддерживается.

Вам необходимо добавить необходимые библиотеки для MySQL внутри контейнера или на машине, где выполняется импорт.

Для стандартной установки вы можете использовать этот шаблон или самостоятельно настроить всё внутри контейнера Bitnami. Также можно воспользоваться инструкцией Установка Discourse для разработки с использованием Docker (существуют также руководства для Mac, Windows и Linux).

Ах, немного странно. Я думал, что Bitnami — это официальная версия.

Стандартная установка является официальной версией. Образ Bitnami разработан и поддерживается компанией Bitnami, и очень немногие здесь его использовали. Если вам нужна помощь с версией Bitnami, вам следует обратиться к ним.

Спасибо за эту информацию. Перейду.