ruby-on-rails ruby - غير قادر على تثبيت pg جوهرة




lang org (17)

إذا كنت تستخدم jruby بدلاً من ruby ​​، ​​فستواجه مشكلات مشابهة عند تثبيت gem. بدلا من ذلك تحتاج إلى تثبيت محول:

gem 'activerecord-jdbcpostgresql-adapter'

حاولت استخدام gem install pg لكن يبدو أنه لا يعمل.

gem install pg يعطي هذا الخطأ

Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing pg:
        ERROR: Failed to build gem native extension.

C:/Ruby/bin/ruby.exe extconf.rb
checking for pg_config... no
No pg_config... trying anyway. If building fails, please try again with
 --with-pg-config=/path/to/pg_config
checking for libpq-fe.h... no
Can't find the 'libpq-fe.h header
*** 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.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=C:/Ruby/bin/ruby
        --with-pg
        --without-pg
        --with-pg-dir
        --without-pg-dir
        --with-pg-include
        --without-pg-include=${pg-dir}/include
        --with-pg-lib
        --without-pg-lib=${pg-dir}/lib
        --with-pg-config
        --without-pg-config
        --with-pg_config
        --without-pg_config


Gem files will remain installed in C:/Ruby/lib/ruby/gems/1.8/gems/pg-0.10.1 for
inspection.
Results logged to C:/Ruby/lib/ruby/gems/1.8/gems/pg-0.10.1/ext/gem_make.out

العمل في حالتي ، أنا استخدم ubuntu 14.04.2 LTS

sudo apt-get install libpq-dev

وأنا استخدم

Ruby 2.2.2 & Rails 4.2.1


لمستخدمي ماك

PATH=$PATH:/Library/PostgreSQL/9.4/bin/ gem install pg

هذا ينبغي أن تفعل خدعة


لقد واجهت هذه المشكلة المزعجة مع PG لسنوات. أنا خلقت هذا gist للمساعدة.

يعمل الأمر التالي دائما بالنسبة لي.

# Substitute Postgres.app/Contents/Versions/9.5 with appropriate version number
sudo ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.5/bin/pg_config

gist: https://gist.github.com/sharnie/5588340cf023fb177c8d


تستخدم مع العلم ARCH .

sudo env ARCHFLAGS="-arch x86_64" gem install pg

هذا حل نفس المشكلة التي تواجهها.


تمت الإجابة عليه هنا: لا يمكن تثبيت pg gem على Windows

لا يوجد إصدار أصلي لـ Windows من أحدث إصدار من pg (0.10.0) الذي تم إصداره بالأمس ، ولكن إذا قمت بتثبيت 0.9.0 ، فيجب تثبيت الثنائيات بدون مشاكل.


gem install pg -- --with-pg-config=/usr/pgsql-9.1/bin/pg_config


ما عليك سوى الذهاب إلى here لمعرفة ما إذا كان الإصدار الخاص بك يدعم نظام Win32 الأساسي ، ثم استخدم هذا الأمر لتثبيت:

جوهرة تثبيت pg -v 0.14.1 - platform = x86-mingw32


كان لدي هذه المشكلة ، وهذا عمل بالنسبة لي:

قم بتثبيت حزمة postgresql-devel ، سيؤدي ذلك إلى حل مشكلة pg_config المفقودة.

sudo apt-get install libpq-dev

إذا كنت تستخدم Postgres.app على نظام التشغيل Mac ، فيمكنك حل هذه المشكلة مرة واحدة وإلى الأبد مثل:

أول gem uninstall pg ، ثم قم بتحرير ملف ~/.bash_profile الخاص بك أو ~/.zshrc أو ما يعادلها وأضف:

# PostgreSQL bin path
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.4/bin

بعد ذلك ، يجب أن يعمل كلٌ من bundle install و gem install pg على النحو المتوقع.


المسألة هي تبعية الأحجار الكريمة لذلك قبل تثبيت pg تأكد من تثبيت "libpq-dev"

أنظمة Ubuntu:

sudo apt-get install libpq-dev

أنظمة RHEL:

yum تثبيت postgresql-devel

ماك:

الشراب تركيب postgresql


كان علي أن أفعل هذا على CentOS 5.8. تشغيل bundle install الحافظة متسببًا في حدوث مشكلات حيث لم أتمكن من إجبارها على استخدام إصدار PG محدد.

لا أستطيع yum erase postgresql postgresql-devel سواء ، بسبب مشاكل التبعية (ستزيل php ، http ، الخ)

الحل؟ Mess $ PATH بشكل مؤقت لتفضيل التحديث pgsql بدلاً من الخيار الافتراضي:

export PATH=/usr/pgsql-9.2/bin:$PATH
bundle install

في الأساس ، مع الأوامر المذكورة أعلاه ، ستنظر في /usr/pgsql-9.2/bin/pg_config قبل الواحد الموجود في /usr/bin/pg_config


لم يتم تثبيت postgresql ، لذلك قمت بتثبيته فقط باستخدام

sudo apt-get install postgresql postgresql-server-dev-9.1

على أوبونتو 12.04.

هذا حلها.

تحديث:

استخدم أحدث إصدار:

sudo apt-get install postgresql-9.3 postgresql-server-dev-9.3

على ماك brew install postgres ثم bundle install


على نظام التشغيل Mac OS (إل كابيتانو). يمكنك ببساطة استخدام: brew install postgresql


$ PATH=$PATH:/Library/PostgreSQL/9.1/bin sudo gem install pg

استبدل الإصدار 9.1 بالإصدار المثبت على نظامك.


إضافة إلى حل @ ymin ل. بالنسبة لي ، الذي قام بتشغيل rvm list ولم يتم تحديد روبي حالي ، يجب تحديد روبي ie يدويًا. rvm use ruby-2.1.x ، ثم إصلاح مسار rvm get stable وتشغيل rvm get stable .





ruby-on-rails ruby rubygems installation