我正在运行OSX 10.7(Lion),最近卸载了MacPorts,因为MySQL无法启动。 MySQL(64位)现在正在启动,但现在我无法安装MySQL gem(Rails)。我尝试过使用with-mysql-config
和ARCHFLAGS
选项,但都没有。我尝试重新安装Ruby 1.9.3,它也没有改变任何东西。在我认为MySQL 5.0.95可能导致问题之后我正在运行MySQL 5.1.61。这是追溯:
Christy$ gem install mysql2
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.
/Users/Christy/.rvm/rubies/ruby-1.9.3-p0/bin/ruby extconf.rb
checking for rb_thread_blocking_region()... yes
checking for rb_wait_for_single_fd()... yes
checking for mysql.h... yes
checking for errmsg.h... yes
checking for mysqld_error.h... yes
creating Makefile
make
compiling client.c
client.c: In function ‘rb_raise_mysql2_error’:
client.c:98: warning: ISO C90 forbids mixed declarations and code
client.c: In function ‘rb_mysql_client_socket’:
client.c:590: warning: ISO C90 forbids mixed declarations and code
compiling mysql2_ext.c
compiling result.c
linking shared-object mysql2/mysql2.bundle
ld: file not found: /opt/local/lib/libssl.1.0.0.dylib for architecture x86_64
collect2: ld returned 1 exit status
make: *** [mysql2.bundle] Error 1
我尝试重新安装openssl(认为file not found: /opt/local/lib/libssl.1.0.0.dylib
可能因此而存在),但它仍然不起作用。我对此很新,所以任何帮助都会非常感激!谢谢!
编辑:/opt/local/lib/
不存在。我不知道为什么它在寻找文件。关于如何将其指向正确位置的任何想法(locate libssl
指向/usr/lib/libssl.0.9.8.dylib
和/usr/local/Cellar/openssl/0.9.8s/lib/libssl.0.9.8.dylib
以及其他地方?
答案 0 :(得分:2)
我的问题很相似,事实证明我安装了mysql并安装了macports。在fully uninstalling macports之后,我用brew:
卸载并重新安装了mysqlbrew uninstall mysql
brew install mysql
答案 1 :(得分:2)
我必须设置我的mysql安装的路径是5.1。这样做,然后它起作用了:
export ARCHFLAGS="-arch x86_64"
export PATH=$PATH:/opt/local/lib/mysql51/bin
答案 2 :(得分:1)
LD_LIBRARY_PATH中有一个错误的路径。可以通过运行export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib ; gem install mysql2
为该shell临时设置它。
但是,可能建议将定义添加到.bashrc(或其他适当的 .shellrc 文件)export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib
,以便所有shell都能获得它。
答案 3 :(得分:0)
不确定,但是您可能需要安装libssl-dev软件包才能进行编译