立野です。

 | 
 | |if have_library("pq", "PQsetdb")
 | |  create_makefile("postgres")
 | |end
 | |
 | |が動いていないため、Makefileができないことが分かりました。
 | |
 | |if文を外すと、コンパイルされました。
 | 
 | libpqを探しているんです.が,ext/config.cacheに記述があると
 | 探しに行かないでその値を優先します.このファイルは単なるキャッ
 | シュですから,おかしいと思ったら即刻削除してください.

 ext/config.cacheには、libpqという文字列は、全く記述されていないのですが。
 消して、やり直してもコンパイルされたことは、ありません。

 extconf.rbを変更して、コンパイルが成功したので、良しとしますか。

 make install して、ダイナミックリンクの確認のため、以下のように打ちました。
------------------------------------------------------------------------------
 % ruby
 require "postgres"
^D
^D
-:1:in `require': LoadError: No such file to load -- postgres
        from -:1
------------------------------------------------------------------------------

LoadErrorとでるのですが、まだ何か設定しなければならないことがあるのでしょうか。


P.S.

あと、ext/Setupのpostgresのコメントを外して、スタティックリンクも行なってみま
したが、Makefileをそのまま使うと、最後のリンクで
 -lsocket -lnsl がないためのリンクエラーが発生しました。
こちらは、意味がないかもしれませんが、上記のLoadErrorは出ませんでした。
--
立野雄一郎
E-Mail  tateno / sra.co.jp