我不能运行捆绑器,不断收到错误

我刚刚将我的RoR开发环境迁移到了Ubuntu。 我从github上下了一个项目,试图安装所有必要的gem。 但是,每当我运行bundlebundle installbundle install exec我得到以下错误:

  edu@edu:~/Workspace/SuitBrokers$ bundle install exec Fetching source index for http://rubygems.org/ Installing rake (0.9.2.2) Installing multi_json (1.0.3) Installing activesupport (3.1.0) Installing bcrypt-ruby (3.0.1) with native extensions Installing builder (3.0.0) Installing i18n (0.6.0) Installing activemodel (3.1.0) Installing erubis (2.7.0) Installing rack (1.3.5) Installing rack-cache (1.0.3) Installing rack-mount (0.8.3) Installing rack-test (0.6.1) Installing hike (1.2.1) Installing tilt (1.3.3) Installing sprockets (2.0.3) Installing actionpack (3.1.0) Installing mime-types (1.17.2) Installing polyglot (0.3.3) Installing treetop (1.4.10) Installing mail (2.3.0) Installing actionmailer (3.1.0) Installing arel (2.2.1) Installing tzinfo (0.3.31) Installing activerecord (3.1.0) Installing activeresource (3.1.0) Installing ansi (1.4.1) Using bundler (1.0.21) Installing cocaine (0.2.0) Installing coffee-script-source (1.1.3) Installing execjs (1.2.9) Installing coffee-script (2.2.0) Installing rack-ssl (1.3.2) Installing json (1.6.1) with native extensions Installing rdoc (3.11) Installing thor (0.14.6) Installing railties (3.1.0) Installing coffee-rails (3.1.1) Installing jquery-rails (1.0.18) Installing mysql (2.8.1) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. /home/edu/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb checking for mysql_query() in -lmysqlclient... no checking for main() in -lm... yes checking for mysql_query() in -lmysqlclient... no checking for main() in -lz... yes checking for mysql_query() in -lmysqlclient... no checking for main() in -lsocket... no checking for mysql_query() in -lmysqlclient... no checking for main() in -lnsl... yes checking for mysql_query() in -lmysqlclient... no checking for main() in -lmygcc... no checking for mysql_query() in -lmysqlclient... 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 --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=/home/edu/.rvm/rubies/ruby-1.9.2-p290/bin/ruby --with-mysql-config --without-mysql-config --with-mysql-dir --without-mysql-dir --with-mysql-include --without-mysql-include=${mysql-dir}/include --with-mysql-lib --without-mysql-lib=${mysql-dir}/lib --with-mysqlclientlib --without-mysqlclientlib --with-mlib --without-mlib --with-mysqlclientlib --without-mysqlclientlib --with-zlib --without-zlib --with-mysqlclientlib --without-mysqlclientlib --with-socketlib --without-socketlib --with-mysqlclientlib --without-mysqlclientlib --with-nsllib --without-nsllib --with-mysqlclientlib --without-mysqlclientlib --with-mygcclib --without-mygcclib --with-mysqlclientlib --without-mysqlclientlib Gem files will remain installed in /home/edu/Workspace/SuitBrokers/exec/ruby/1.9.1/gems/mysql-2.8.1 for inspection. Results logged to /home/edu/Workspace/SuitBrokers/exec/ruby/1.9.1/gems/mysql-2.8.1/ext/mysql_api/gem_make.out An error occured while installing mysql (2.8.1), and Bundler cannot continue. Make sure that `gem install mysql -v '2.8.1'` succeeds before bundling. 

有没有人处理过这种特殊的痛苦? 您的帮助是永远赞赏。

你需要告诉打包者在哪里找到你的盒子上的mysql-dev的东西。 通常像下面这样的工作:

 bundle config build.mysql --with-mysql-config=/usr/local/mysql/bin/mysql_config 

当然,你需要用你实际的路径替换上面的路径到mysql_config。 如果你没有安装mysql_config,那么你将需要在你的服务器上安装mysql-dev软件包。 看起来你可能在共享服务器上,所以希望已经安装了开发包。 如果没有,你需要请求它。

您在Ubuntu 14.04(Trusty)上缺少的库是: libmysqlclient-dev 。 下面的行为我做了诡计:

 sudo apt-get install libmysqlclient-dev