programing

라이브러리가 로드되지 않음: /usr/local/opt/readline/lib/libreadline.6.2.dylib

lastcode 2023. 5. 2. 22:43
반응형

라이브러리가 로드되지 않음: /usr/local/opt/readline/lib/libreadline.6.2.dylib

방금 홈브루와 함께 posgresql을 설치하고 명령을 입력합니다.

psql

다음 오류가 발생합니다.

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib
Referenced from: /usr/local/bin/psql
Reason: image not found
[1]    69711 trace trap  psql

뭐가 잘못됐는지 아는 사람?

저도 똑같은 오류가 발생했지만 위의 답변은 저에게 맞지 않았습니다.postgresql을 다시 설치해야 했습니다.

brew reinstall postgresql

이 "postgresql"을 입니다.libreadline.6.2.dylib그러나 당신의readline은 버입니입니다.7.0되어 있습니다. 7의 lib는만결어있습니다연되의다▁so있.

postgresql을 업그레이드하는 것은 좋은 생각이 아니라고 생각합니다. 쉽지 않고 특히 데이터베이스 데이터가 이미 있는 경우 많은 문제를 일으킬 수 있습니다.

가 하는은 제가하일버바것입다니꾸는전의 을 바꾸는 것입니다.readline을 할 때.brew info readline버전을 수 . 제 은 당은다버른찾전것을다입니저, 는신을입니다.6.3.8다음을 실행하여 해당 버전으로 전환합니다.

$ brew switch readline 6.3.8

6.3.8로 변경되고 다음 링크가 생성됩니다.

Cleaning /usr/local/Cellar/readline/6.3.8
Cleaning /usr/local/Cellar/readline/7.0.1
Opt link created for /usr/local/Cellar/readline/6.3.8

이 경우 모든 연결된 lib가 6 버전으로 바뀌고 명령줄이 작동합니다.

$ ls /usr/local/opt/readline/lib/
libhistory.6.2.dylib    libhistory.dylib    libreadline.a
libhistory.6.3.dylib    libreadline.6.2.dylib   libreadline.dylib
libhistory.6.dylib  libreadline.6.3.dylib
libhistory.a        libreadline.6.dylib

하지만 다른 버전의 리드라인을 사용하는 앱이 있다면 업그레이드를 고려해야 한다고 생각합니다.


업데이트: 06/02/2019

이전 버전이 설치되어 있지 않으면 어떻게 합니까?

Homebrew이전 버전 수식을 설치하는 방법을 제공하지 않습니다.에는 v2.0.0을 합니다.brew cleanup30일마다 기본 동작으로 사용됩니다.따라서 실수로 업데이트할 수 있습니다.brew이전 버전을 삭제합니다.

다음은 이전 버전을 설치하는 단계입니다.

  1. 에 가다homebrew-core디렉터리:
    $ cd $(brew --repository)/Library/Taps/homebrew/homebrew-core
  1. 해시에서 이전 수식을 확인합니다.
    $ git log master -- Formula/readline.rb
  1. 해당 버전의 해시 값 찾기
    commit 1dd4221c35716d6bec363ad3425ef93ffe7d9b9f
    Author: BrewTestBot <brew-test-bot@googlegroups.com>
    Date:   Wed Aug 15 21:51:16 2018 +0000

        readline: update 7.0.5 bottle.
  1. 이전 수식 체크아웃:
    $ git checkout 1dd4221c35716d6bec363ad3425ef93ffe7d9b9f Formula/readline.rb
  1. 수식을 다시 설치합니다.
    $ brew reinstall readline
  1. 보고서 재설정

다음 단계에 따라 이전 버전의 수식을 다시 설치할 수 있습니다.

상황이 더 높은 버전의 리드라인을 가지고 있다면 7.0이라고 말합니다.당신은 이걸 할 수 있다.

cd /usr/local/opt/readline/lib    
ln libreadline.7.0.dylib libreadline.6.2.dylib

리드라인이 설치되어 있지 않은 경우 먼저 다음을 설치합니다.

brew install readline

저는 리드라인을 설치했는데도 이 오류가 발생했습니다.리드라인을 다시 설치하면 다음과 같은 이점이 있습니다.

brew reinstall readline

이것은 나에게 효과가 있었습니다.

brew switch readline

설치한 버전이 표시됩니다.그 중에서 하나만 골라주세요.7.0.5를 선택했습니다.

나는 그 다음에 달렸습니다.

brew switch readline 7.0.5

되었고, 라인버업되었습니다트데이전리이드▁the다▁got니▁read▁updated,습▁and▁version었line되.psql순조롭게 진행되었습니다.

이것은 나에게 효과가 있었습니다.

ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

해결책은 리드라인의 연결을 다시 강제하는 것입니다.

brew remove readline
brew install readline
brew link readline --force

제가 보기에 문제는 업데이트 리드라인 패키지와 관련된 것 같습니다.이 경우 postgres는 /usr/local/opt/readline/lib/libreadline.7.dylib를 사용하려고 했습니다.그래서 저는 라이브러리 /usr/local/opt/readline/lib/libreadline.8.dylib의 기존 버전에 대한 심볼 링크를 만들었습니다.

저를 위해 일했습니다.

ln -s /usr/local/opt/readline/lib/libreadline.8.dylib /usr/local/opt/readline/lib/libreadline.7.dylib

이러한 솔루션 중 어느 것도 제대로 작동하지 않았습니다. 실행해야 했습니다.

brew upgrade bash

출처: https://github.com/Homebrew/homebrew-core/issues/5799

위의 답변은 저에게 효과가 없었기 때문에 저는 결국 효과가 있었던 것을 올리고 싶었습니다.여기서 찾은 스레드에 따라 리드라인을 제거하고 소스에서 제외하고 다시 설치해야 했습니다.

brew uninstall readline
brew install --build-from-source readline

그 후에 psql 오류가 사라졌습니다.

저는 이 문제가 있었고, 제게 중요한 것은reinstall둘다요.readline그리고.postgrespostgres를 다시 설치하면 문제가 해결됩니다.

psql을 수정하는 또 다른 방법은 postgresql 업데이트를 실행하는 것입니다.brew upgrade postgresql최신 버전은 읽기 7 버전을 사용할 것이기 때문입니다.

실수로 readline을 버전 7로 업데이트했을 때 이 문제가 발생했습니다.Readline 및 brew를 제거하면 6.3.8이 아직 설치되어 있다는 것을 알 수 있습니다.현재 버전 7은 PSQL과 함께 작동하지 않는 것 같습니다.

나는 이 터미널 명령어들을 모두 시도했지만 아무 것도 작동하지 않아서 수동으로 수정하기로 결정했습니다.

파인더 열기 그리고 때리기 명령+shift+g

Go to this folder /usr/local/opt/readline/lib/

이 파일의 여러 버전이 표시됩니다.

libreadline.6.dylib
libreadline.7.0.dylib

로드되지 않은 라이브러리로 이름 바꾸기

this is: /usr/local/opt/readline/lib/libreadline.6.2.dylib
mine was: /usr/local/opt/readline/lib/libreadline.6.dylib

미리 보기 답변을 다 해봤는데 아무 것도 안 됐어요.제게 정말로 효과가 있었던 것은 다음과 같습니다.

brew link postgresql

다음 명령이 저에게 효과가 있었습니다.

brew reinstall postgresql
brew postgresql-upgrade-database

이것은 저에게 도움이 되었습니다: 모든 리드라인과 postgresql을 제거합니다.

CPPFLAGS=-I/usr/local/opt/readline/export LDFLAGS=-L/usr/local/opt/readline/lib 포함

및 posqtgresql 설치

이 솔루션이 도움이 된다는 것을(를)

brew upgrade bash

https://github.com/Homebrew/homebrew-core/issues/5799

시도해 볼 수 있습니다.brew doctor뭐라고 쓰여 있는지 보세요.

아마도 당신이 필요로 하는 것은brew link --overwrite bash.

저는 OS X EL Capitan에 약간의 보안 업그레이드가 있었기 때문에 방금 양조를 업그레이드했습니다./usr폴더를 누릅니다.Brew 업그레이드 중에 Bash 링크가 끊어지고, 이것이 바로brew doctor내게 말해줘요.

그래서 나는 그냥 달립니다.brew link --overwrite bash그리고 모든 것이 좋습니다.

다른 관련 사항이 있는지 확인해 보는 것이 좋습니다.postgresql저는 이전에 postgres93 패키지에 연결했는데, 2017년 5월 현재 지원되지 않고 제거되었습니다.해당 링크를 제거한 다음 다시 연결하는 것이 효과적이었습니다.

brew unlink postgresql93
brew link postgresql

저의 경우 정답이 문제를 해결하지 못했습니다.

실행 후 문제가 시작되었습니다.brew doctor추가export PATH="/usr/local/bin:$PATH"내 ~/.zshrc 파일로.

제거 중

export PATH="/usr/local/bin:$PATH" 

~/.zshrc해결했습니다.

알 수 없는 이유로 인해 다음 Readline 버전에서 이 오류가 발생했을 때 RVM이 어떻게 연결하든 올바른 오류를 찾을 수 없는 것처럼 보였습니다.

Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)

.rb-readline과 또 다른 Gemfile을 .bundle install작동하기 시작했습니다.

전... 그냥 모르겠어요

언급URL : https://stackoverflow.com/questions/21488778/library-not-loaded-usr-local-opt-readline-lib-libreadline-6-2-dylib

반응형