in my mac OSX 10.6 32 bit, I can install mysql2 gem quite easily, but not in mini mac 10.6 64bit server.
I have installed MySQL 5.5.11 in troublesome server, while i
The only way I could get this to work was to install the x64 version of mysql. I just used the .dmg located here http://dev.mysql.com/downloads/mysql/ and it worked like a charm. Wish I could get the 4 hours back it took to figure this out.
Posting this wherever I can--hopefully it will help someone and save them a lot of time.
I dug through 2 days worth of the internet and Stack Overflow, and it wasn't until I found this link and then starting working through this ticket for mysql2 that I actually resolved the issue.
With my setup (as explained in the ticket), the compiler switches of -Wno-null-conversion -Wno-unused-private-field would break and give me an error that wasn't exactly correct, which was:
mysql.h is missing. please check your installation of mysql and try again
I tried all the solutions posted here, but was not lucky. I reinstalled mysql with homebrew a couple of times and still no luck. Then I came across a blog post with a solution.
I edited the mysql_config file in /usr/local/Cellar/mysql/5.6.12/bin
and removed
the W-compiler options
-Wno-null-conversion
and
-Wno-unused-private-field
for cflags and cxxflags.
This solved the problem with gem install mysql2
and bundle install
Reference: http://www.randomactsofsentience.com/2013/05/gem-install-mysql2-missing-mysqlh-on-os.html
Verify that gcc is installed. If it isn't, you will get that same error message.
You can check the results/log file it mentions for more clues as to the cause.
This worked for me on my Mac OSX Lion:
sudo env ARCHFLAGS="-I/usr/local/include/mysql/mysql -pipe -fPIC -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL" gem install mysql -- --with-mysql-dir=/usr/local/mysql --with-mysql-lib=/usr/local/lib/mysql/mysql --with-mysql-include=/usr/local/include/mysql/mysql --with-mysql-config=/usr/local/bin/mysql_config
This blog answered it.
I did a bundle install on a redmine repo and got the same error message :
mysql.h is missing. please check your installation of mysql and try again.
Running Fedora 16 64 bits, all I did was install mysql-devel
(development package) from the distro rpm and the problem was solved!
So I think you could just
yum install mysql-devel
or apt-get the missing devel package.