Независимо от того, какую операционную систему вы используете, посмотрите файл журнала "Makefile"
, чтобы увидеть, что происходит, вместо того, чтобы устанавливать вслепую.
В моем случае, MAC OS, файл журнала находится здесь:
/Users/za/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-15/2.3.0-static/pg-1.0.0/mkmf.log
В журналах указано, что файл make не может быть создан из-за следующего:
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers
Внутри mkmf.log вы увидите, что не удалось найти необходимые библиотеки, чтобы завершить сборку.
checking for pg_config... no
Can't find the 'libpq-fe.h header
blah blah
После запуска "brew install postgresql"
я вижу все необходимые библиотеки:
za:myapp za$ cat /Users/za/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-15/2.3.0-static/pg-1.0.0/mkmf.log | grep yes
find_executable: checking for pg_config... -------------------- yes
find_header: checking for libpq-fe.h... -------------------- yes
find_header: checking for libpq/libpq-fs.h... -------------------- yes
find_header: checking for pg_config_manual.h... -------------------- yes
have_library: checking for PQconnectdb() in -lpq... -------------------- yes
have_func: checking for PQsetSingleRowMode()... -------------------- yes
have_func: checking for PQconninfo()... -------------------- yes
have_func: checking for PQsslAttribute()... -------------------- yes
have_func: checking for PQencryptPasswordConn()... -------------------- yes
have_const: checking for PG_DIAG_TABLE_NAME in libpq-fe.h... -------------------- yes
have_header: checking for unistd.h... -------------------- yes
have_header: checking for inttypes.h... -------------------- yes
checking for C99 variable length arrays... -------------------- yes