dyld: Thư viện không được tải: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib


149

Tôi đã cài đặt hơi thông qua homebrew và sau đó ngay lập tức muốn nhảy vào một dự án bằng cách thực hiện vapor new Hellonhưng sau đó nhận được thông báo sau trong thiết bị đầu cuối:

dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
Referenced from: /usr/local/bin/vapor
Reason: image not found
zsh: abort      vapor new Hello

Tôi đã thử một số cách tiếp cận để khắc phục điều này như gỡ cài đặt và cài đặt lại openssl thông qua brew nhưng không được. Cũng đã thử một cái gì đó tôi tìm thấy trên internet nhưng không có gì làm việc. Tôi giả sử nó có liên quan đến hơi chỉ hoạt động với phiên bản 1.0.0 chứ không phải 1.1.1 và đó là những gì tôi có. Tôi đoán tôi cần hạ cấp xuống 1.0.0 nhưng tôi phải làm thế nào? Tôi đang dùng MacOS Catalina nếu điều đó quan trọng. Cảm ơn trước.


Hỗ trợ cho OpenSSL 1.1 đã được thêm vào Vapor: github.com/vapor/open-crypto/pull/75
Michal Cichon

Điều này có thể hữu ích cho những người khác: < stackoverflow.com/a/59224109/3776039 >
unifreak

Tôi đã sử dụng phương pháp này để khắc phục /usr/local/bin/wget(đã bị lộ bởi plenv install-cpanm)
DouglasDĐ

Câu trả lời:


436

Chuyển sang gói openssl cũ hơn

brew switch openssl 1.0.2s

Hoặc, tùy thuộc vào cấu hình hệ thống chính xác của bạn, bạn có thể cần phải chuyển sang một phiên bản khác. Kiểm tra đầu ra của ls -al /usr/local/Cellar/opensslsố phiên bản để chuyển sang.

brew switch openssl 1.0.2q
# or
brew switch openssl 1.0.2r
# or 
brew switch openssl 1.0.2s
# or
brew switch openssl 1.0.2t
# etc...

20
Đây là giải pháp tốt nhất và đơn giản nhất. Tuy nhiên, Homebrew sẽ loại bỏ các gói không dùng nữa. Không chắc chắn khi nào giải pháp này sẽ ngừng hoạt động
tom10271

3
@Leopathu bạn có thể giải thích lý do tại sao đây phải là câu trả lời được phê duyệt và không phải là câu trả lời tôi đã phê duyệt? Nếu đây là câu trả lời tốt hơn tôi vẫn có thể phê duyệt nó.
Cronay

10
Công việc này đối với tôi với một chút thay đổi chữ cái cuối cùng "r" brew switch openssl 1.0.2r trên MacOS Catalina
juanitourquiza

4
giải pháp tốt nhất. brew switch openssl 1.0.2t trong trường hợp của tôi
Gà vàng

14
brew switch openssl 1.0.2tchỉ làm việc cho tôi Cảm ơn người đàn ông.
Jason R

71

Cố gắng sử dụng install_name_tool:

sudo install_name_tool -change /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/opt/openssl/lib/libssl.1.1.dylib $(which vapor)
sudo install_name_tool -change /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/opt/openssl/lib/libcrypto.1.1.dylib $(which vapor)

Trong trường hợp của tôi, nó bắt đầu làm việc khi tôi sử dụng install_name_tool. Thứ tự của tham số theo sau: giá trị cũ (không chính xác), sau đó là giá trị mới (nơi bạn có openssl của bạn) và đường dẫn đến hơi (có thể dễ dàng nhận được $(which vapor).


4
Cách tiếp cận thấp hơn đã giải quyết nó cho tôi, cảm ơn rất nhiều!
Cronay

2
Cảm ơn bạn!! install_name_tool làm việc cho tôi
Andrew Morris

1
Cảm ơn bạn rất nhiều, install_name_tool đã làm cho ngày của tôi!
Cédric Moreaux

11
brew update && nâng cấp brew sẽ nâng cấp tất cả các gói, nó gây ra HUGE vấn đề
tom10271

2
vâng, vui lòng xóa brew upgradekhỏi câu trả lời @ michal-cichon
macool

66

brew switch openssl 1.0.2s

đã làm việc cho tôi trên "macOS Mojave", "phiên bản 10.14.6".


Cảm ơn Tableau 2019.10.3 của tôi đã không mở trong Mac OS Mojave và lệnh này đã giúp giải quyết điều đó!
Isaac Philip

brew switch openssl 1.0.2p
Evhz

39
brew switch openssl 1.0.2q

MacOs Catalina Phiên bản 10.15 làm việc cho tôi


Tôi đã phải nâng cấp và cập nhật bia trước khi nó hoạt động
ricks

28

Đối với MacOS 10.15 Catalina hãy thử cài đặt openssl trước:

brew update && brew upgrade
brew uninstall --ignore-dependencies openssl
brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

25

Tôi đã từng gặp vấn đề tương tự. Tôi đã giải quyết nó bằng cách chạy 2 lệnh này:

brew uninstall vapor
brew install vapor/tap/vapor

Nó đã làm việc.


Tôi chỉ nâng cấp công cụ máy khách, không phải hơi mà là wget trong trường hợp của tôi. Sau đó, sử dụng phiên bản mới hơn của opensslbrew upgrade vapor
mạnh mẽ vào

24

đầu tiên, liệt kê chi tiết của phiên bản openssl đã cài đặt (hoặc các chương trình khác) bằng cách:

$ls -al /usr/local/Cellar/openssl*
/usr/local/Cellar/openssl:
total 0
drwxr-xr-x    3 mba  staff    96 Nov 30 17:18 .
drwxrwxr-x  170 mba  admin  5440 Apr  8 02:03 ..
drwxr-xr-x   13 mba  staff   416 Nov 21 03:13 1.0.2t

/usr/local/Cellar/openssl@1.1:
total 0
drwxr-xr-x    4 mba  staff   128 Apr  7 18:35 .
drwxrwxr-x  170 mba  admin  5440 Apr  8 02:03 ..
drwxr-xr-x   14 mba  staff   448 Oct  1  2019 1.1.1d
drwxr-xr-x   14 mba  staff   448 Apr  7 18:35 1.1.1f

như đầu ra ở trên, chỉ có một phiên bản "đúng" "openssl" trong máy mac của tôi. Sau đó, chuyển sang nó:

$brew switch openssl 1.0.2t                                 
Cleaning /usr/local/Cellar/openssl/1.0.2t
Opt link created for /usr/local/Cellar/openssl/1.0.2t

Cảm ơn. Nó đã cứu ngày của tôi.
khiav reoy

Cảm ơn! Điều này đã làm việc!
ksankar

Đây phải là câu trả lời được chấp nhận!
ActualAl

Tôi đã dành cả ngày để cài đặt, cài đặt lại các phiên bản đường ray, đá quý mysql2 với nhiều cờ và tùy chọn khác nhau. Điều này làm việc như một nét duyên dáng! Cảm ơn bạn đời!
Martynas Jurkus


18
brew switch openssl 1.0.2r

nó hoạt động với tôi, macOS Mojave, Phiên bản 10.14.6


Nó hoạt động với tôi (macOS Catalina, ruby ​​2.4.1, rails 5.2.2, openssl 1.1.1f). Đã chuyển sang 1.0.2s.
AntonAL

14

Điều này làm việc cho tôi trên máy Mac của tôi

brew switch openssl 1.0.2n


brew switch openssl 1.0.2slàm việc cho tôi trên Catalina.
Inanc Gumus


3

Đây có thể là một vấn đề vì có phiên bản cũ hơn của brew và được cài đặt byobu, đòi hỏi sự phụ thuộc mới để giải quyết vấn đề này chạy lệnh sau

brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

1
Một đơn giản brew update && brew upgradeđã lừa tôi.
valcanaia

3

Đề xuất brew update && brew upgrade là giải pháp không phải là một câu trả lời tốt và, vì lỗi này xuất hiện trong hầu hết các trường hợp do việc thực hiện này ...

Chuyển sang phiên bản trước mà bạn đang sử dụng chỉ: brew switch openssl XXXvà đó là phiên bản đó.


Các bạn từ Google, câu trả lời thực tế là đây.
TrungDQ

2

Tôi đã có một vấn đề tương tự và dựa trên điều này và các ý kiến ​​khác ở đây những gì đã xảy ra và hoạt động:

➜ brew update && brew upgrade && brew install openssl
remote: Repository not found.
fatal: repository 'https://github.com/Homebrew/homebrew-dupes/' not found
Error: homebrew/homebrew-dupes does not exist! Run `brew untap homebrew/homebrew-dupes` to remove it.
...
➜ brew untap homebrew/homebrew-dupes
➜ brew update && brew upgrade && brew install openssl

Điều này là sau khi làm việc trên nó hàng giờ, nhưng lần đầu tiên tôi thấy các bản sao homebrew-dupes. Không chắc làm thế nào Homebrew biết cài đặt cái gì, nhưng dường như nó cài đặt mọi thứ từ đầu. macOS Catalina, zsh. Tôi nghĩ vấn đề ban đầu là do Catalina

Lỗi tôi nhận được là:

dlopen(/Users/gscar/.gem/ruby/2.7.0/gems/pg-1.2.2/lib/pg_ext.bundle, 9): Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib (LoadError)
  Referenced from: /usr/local/opt/postgresql/lib/libpq.5.dylib
  Reason: image not found - /Users/gscar/.gem/ruby/2.7.0/gems/pg-1.2.2/lib/pg_ext.bundle

0

Nếu bạn không có Homebrew hoặc không biết nó là gì

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

Hoặc nếu bạn đã cài đặt Homebrew

brew update && brew upgrade
brew uninstall openssl; brew uninstall openssl; brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb

Điều này hoạt động với tôi trên Mac 10.15


0

Tôi gặp phải lỗi này với mysql (phiên bản: 5.6.46_2), Mac (Mojave 10.14.5):

    brew update && brew upgrade
    brew now setup_mysql
    echo ‘export PATH=/usr/local/opt/mysql56/bin:$PATH”’ >> 
    ~/.bash_profile
    /usr/local/opt/mysql56/bin/mysql.server start
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.