39

Tôi đang làm việc trên ứng dụng đường ray.
Postgresql đã cài đặt bằng cách sử dụng postgresql-9.1.2-1-osx.dmg
Đá quý pg được cài đặt.
Sau đó, khi tôi thực hiện rake db:create nhận được lỗi sau -Thư viện không được tải: /usr/local/lib/libpq.5.4.dylib khi chạy rake db: tạo

dlopen (/Users/sathishvc/.rvm/gems/[email protected]/gems/pg-0.12.2 /lib/pg_ext.bundle, 9): Thư viện không nạp: /usr/local/lib/libpq.5.4.dylib

Kiểm tra nếu /usr/local/lib/libpq.5.4.dylib tồn tại hay không. Nó không.
Vì vậy, nó phải tồn tại ở một nơi khác trong hệ thống hoặc tôi không biết, nếu tôi cần cài đặt bất kỳ phần mềm nào khác cho việc này.

Khuyên mọi người vui lòng?

Trả lời

4

Một thời gian sau khi tôi đăng câu hỏi này, tôi thấy rằng libpq.5.4.dylib nằm trong /Library/PostgreSQL/9.1/lib/.
Vì vậy, tôi đã tạo liên kết sau:
lrwxr-xr-x 1 sathishvc admin 43 Jan 28 23:40 /usr/local/lib/libpq.5.4.dylib -> /Library/PostgreSQL/9.1/lib/libpq.5.4.dylib.

Điều này giải quyết được sự cố sau đó.

5

tôi đã chạy vào vấn đề này sau khi việc chuyển sang sử PostgresApp và loại bỏ các phiên bản PostgreSQL hiện qua

brew remove postgres 

tôi cuối cùng giải quyết vấn đề bằng cách cài đặt lại PostgreSQL qua

brew install postgres 

tôi có thể giữ lại việc sử dụng PostgresApp bằng cách thêm thông tin sau vào của tôi .bash_profile

export PATH="/Applications/Postgres.app/Contents/MacOS/bin:/usr/local/bin:$PATH" 
.210

Bạn cũng có thể thử chạy:

brew doctor 

Vì nó cảnh báo cho tôi điều này cũng như một số lỗi khác.

Lỗi này cũng ảnh hưởng đến khả năng sử dụng đá quý Paperclip của tôi vì nó khiến ImageMagick thất bại với cùng lỗi.

(Sử dụng OS X 10.8.2)

62

nếu bạn đã nâng cấp PostgreSQL với homebrew (brew cập nhật & & brew nâng cấp), sau đó chỉ cần gỡ bỏ cài đặt các viên ngọc pg:

gem uninstall pg 
bundle install 

và đường dẫn sẽ được sửa chữa cho bạn. Không cần phải gỡ cài đặt toàn bộ cụm PostgreSQL.

+0

hoạt động như một nét duyên dáng, cái đầu đau nhức @apple! – jahrichie

+0

ngọt ngào, làm việc một điều trị cho tôi là tốt. cảm ơn! – typeoneerror

+0

'brew update && brew upgrade' làm việc cho tôi, tôi thậm chí không cần phải gỡ cài đặt và cài đặt lại pg. – BananaNeil

2

Trong trường hợp của tôi, việc gỡ cài đặt/cài đặt lại gem không giúp được gì.Nhưng tôi đã thêm các đường dẫn thư viện PostgreSQL để biến $DYLD_LIBRARY_PATH môi trường trong ~/.bash_profile tôi:

export DYLD_LIBRARY_PATH=/Library/PostgreSQL/9.3/lib:$DYLD_LIBRARY_PATH 

Nếu bạn cũng đã cài đặt MySQL, dòng này có thể trông giống như:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:/Library/PostgreSQL/9.3/lib:$DYLD_LIBRARY_PATH 

Trong số chú ý khóa học để số phiên bản trong đường dẫn PostgreSQL, tại thời điểm viết bài này là 9.3. Tôi đang sử dụng RVM, Ruby 2.0.0, pg gem 0.17.0, trên Mac OS X 10.6.

1

Hãy thử brew prune và sau đó cài đặt lại

1

đây không phải là một câu trả lời trực tiếp cho câu hỏi nhưng có thể phát sinh thường xuyên

Hai trường hợp bổ sung mà có thể quan tâm nếu bạn đã nâng cấp PostgreSQL với homebrew:

  1. bạn đã tiến hành trước đây để cắt bớt các phiên bản đá quý
  2. ứng dụng của bạn cũ hơn và không thể ot có một phiên bản gần đây của pg (tôi có một ứng dụng đường ray 2 không với pg 0,17 và gần như giết chết máy chủ: mkmr.log tăng theo cấp số nhân ... hãy thử 200GB!)

bạn có thể thực sự có rất nhiều phiên bản của pg để dựa vào

khi bạn chạy

gem uninstall pg 

nếu bạn có nhiều hơn một phiên bản, hệ thống sẽ yêu cầu phiên bản mà bạn muốn xóa . Nhưng danh sách đó có thể hữu ích cho bạn! Để thay thế cho câu trả lời của bạn, bạn có thể dừng lại ở đó và đặt lại đá quý của bạn thành phiên bản có thể chấp nhận được

Các vấn đề liên quan