本来在mac os x 10.6 snow leopard上安装postgresql是很简单的事情
从官网下载9.0.1的dmg文件,然后安装就得了
我是这么想的,可问题确不那么简单,dmg很容易,傻瓜安装
装rails驱动
gem install pg
却发生问题,首先说找不到pg_config
checking for pg_config... no
那简单,配置PATH就行
export PATH=/Library/PostgreSQL/9.0/bin:$PATH
然后报另外的错,
checking for main() in -lpq... no
checking for main() in -llibpq... no
checking for main() in -lms/libpq... no
上网找原因说是要设
export ARCHFLAGS="-arch i386"
这样虽然编译成功了,gem装上去了,但跑服务是跑不起来的,又报错了
http://flux88.com/blog/installing-postgresql-for-rails-on-mac-os-x/
这篇文章指出,dmg的是32位版本,gem如果设arch i386硬装了32位版本,但是ruby是64位版本,所以还是不行。所以那篇文章作者最后还是用port安装了
但是,我不喜欢port,port早就被我删除了,这怎么办
还是从源码着手,下载了源码,解压,configure,make ,sudo make install
然后设了路径到/usr/local/pgsql/bin
export PATH=/usr/local/pgsql/bin:$PATH
我也没设ARCHFLAGS="-arch i386"
然后重装pg
gem uninstall pg
gem install pg
一次成功,再rake db:migrate 就没报错了,生成表成功。rails server也跑起来了。
呵呵,跟我猜想一样,我只要驱动是64位就可以了,dmg里面装的数据库是32位版本也没关系。只不过多装了一套postgresql而已。