Ошибка с MySQL при установке пакета
-
25-10-2019 - |
Вопрос
Когда я делаю установку пучка, я получаю ошибку:
Installing mysql2 (0.3.10) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/manish/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--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=/Users/manish/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
--with-mysql-config
--without-mysql-config
extconf.rb:33:in ``': No such file or directory - /usr/local/bin/mysql_config --cflags (Errno::ENOENT)
from extconf.rb:33:in `<main>'
Gem files will remain installed in /Users/manish/.rvm/gems/ruby-1.9.2-p290/gems/mysql2- 0.3.10 for inspection.
Results logged to /Users/manish/.rvm/gems/ruby-1.9.2-p290/gems/mysql2- 0.3.10/ext/mysql2/gem_make.out
An error occured while installing mysql2 (0.3.10), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.3.10'` succeeds before bundling.
В Gemfile MySQL - это что -то вроде этого:
gem "mysql2", ">=0.3.0"
И когда я также пытаюсь установить MySQL с помощью Brew с помощью Sudo, он дает следующую ошибку:
sudo: unable to execute /usr/local/bin/brew: Permission denied
Как я могу решить это?
Решение
Я нашел свое решение, и вот оно:
Шаг 1: Очистите ранее установленные RVM и Xcode
=> rm -rf ~/.rvm
=> sudo rm -rf /Developer
Шаг 2: Установите Xcode из App Store или установщика может быть сохранен в вашей панели Launch.
Шаг 3: Установите Homebrew:
=> mkdir -p /usr/local/Cellar
=> /usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"
Шаг 4: Установите RVM
=> bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)
=> echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
Шаг 5: Установите Ruby 1.9.2
=> rvm install 1.9.2
=> rvm use ruby-1.9.2 --default
=> gem install rails thin bundler
=> rvm install 1.9.2-head
=> brew install git ack wget curl redis memcached libmemcached colordiff imagemagick
Шаг 6: Установите MySQL
=> brew install mysql
=> mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
=> mkdir -p ~/Library/LaunchAgents
=> cp /usr/local/Cellar/mysql/5.5.15/com.mysql.mysqld.plist ~/Library/LaunchAgents/
=> launchctl load -w ~/Library/LaunchAgents/com.mysql.mysqld.plist
=> mysql -u root
=> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
=> FLUSH PRIVILEGES;
Другие советы
Вы можете скачать библиотеки и передать их местонахождение вручную в процесс строительства драгоценных камней в качестве флагов, но это немного боли.
MySQL искал в/usr/local/bin, который имеет смысл для домашней установки, но если Sudo Brew не работает, возникает проблема с разрешениями, и у вас, вероятно, возникнут гораздо больше проблем.
Честно говоря, я бы исправил Brew B/C, который будет продолжать расстроить вас. Нормальный танец, чтобы исправить - ремонтные разрешения, используя диск, запустите Braw Doctor, чтобы проверить проблемы, взорвать и переустановить, если что -то станет плохим.
Удачи