我一直在尝试将我的Rails开发环境从Lion升级到Mountain Lion,但已经有一段时间了。问题在于安装pg-0.14.0(postgresql)gem。
我尝试了这篇文章中的方法,但没有成功。我尝试使用Homebrew卸载Postgres,然后重新安装它,但仍然无法解决问题。如果我尝试安装这个gem,我会收到以下错误提示:
Building native extensions. This could take a while...
ERROR: Error installing pg: ERROR: Failed to build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb
checking for pg_config... yes
Using config values from /usr/local/bin/pg_config
checking for libpq-fe.h... yes
checking for libpq/libpq-fs.h... yes
checking for pg_config_manual.h... yes
checking for PQconnectdb() in -lpq... no
checking for PQconnectdb() in -llibpq... no
checking for PQconnectdb() in -lms/libpq... no
Can't find the PostgreSQL client library (libpq)
*** 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.
我该在哪里找到 mkmf.log
文件?有人能给我关于如何再次安装pg gem的建议吗?
更新 我使用以下命令找到了我的mkmf.log文件:
find / -name mkmf.log 2>/dev/null
有几个xcrun调用失败,例如下面的调用:
have_library: checking for PQconnectdb() in -llibpq... -------------------- no
"xcrun cc -o conftest -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin12.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I/usr/local/Cellar/postgresql/9.1.4/include -arch i386 -arch x86_64 -g -Os -pipe -fno-common -DENABLE_DTRACE -fno-common -pipe -fno-common conftest.c -L. -L/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib -L. -arch i386 -arch x86_64 -L/usr/local/Cellar/postgresql/9.1.4/lib -lruby -llibpq -lpthread -ldl -lobjc " ld: library not found for -llibpq clang: error: linker command failed with exit code 1 (use -v to see invocation)
为什么运行xcrun时出现错误?有人见过这种情况吗?
谢谢!
find / -name mkmf.log 2>/dev/null
命令搜索整个系统,并抑制权限错误。 - Craig Ringer