pgModeler 설치 - 종속성 오류

pgModeler 설치 - 종속성 오류

pgModeler를 설치하려고 합니다. 하지만 막혔어요.

내 pgModeler는 /opt/pgmodeler-0.5.2/에 있습니다.

Qt 5.0, Pg 등 모든 종속성이 있습니다.

./pgmodeler를 사용하여 pgmodeler를 실행하면 다음 오류가 발생합니다.

./pgmodeler: error while loading shared libraries: libutils.so.1:
cannot open shared object file: No such file or directory

나에게 오류는 분명합니다. 실행 중

$ ldd pgmodeler

전체 종속성 스택을 표시합니다. 하지만 이 섹션에서는 일부 파일을 찾을 수 없습니다.

libutils.so.1 => not found
libparsers.so.1 => not found
libdbconnect.so.1 => not found
libobjrenderer.so.1 => not found
libpgmodeler.so.1 => not found
libpgmodeler_ui.so.1 => not found
libQt5PrintSupport.so.5 => not found
libQt5Widgets.so.5 => not found
libQt5Gui.so.5 => not found
libQt5Core.so.5 => not found

나는 이 파일들을 모두 가지고 있습니다. 하지만 그것을 찾기 위해 pgmodeler를 설정하는 방법을 모르겠습니다. pgmodeler.vars에서 제안한 대로 /etc/profile.d/ 아래에 pgmodeler.sh라는 파일을 만들었습니다. 절대! 여전히 문제가 있습니다.

PATH 변수에 대한 종속성 경로를 추가하고 파일을 디렉터리에 복사해 보세요.

훌륭한. 아무것도 없습니다. :(

누구든지 나를 도와줄 수 있나요? 더 많은 정보가 필요하면 언제든지 제공할 수 있습니다. 매우 감사합니다.

답변1

문서가 업데이트되었습니다. 이 스크립트를 사용하여 설치 경로에 맞게 조정하십시오.

#/bin/bash

# 여기에 pgmodeler 루트 디렉터리의 전체 경로를 지정합니다.
PGMODELER_ROOT="/path/to/pgmodeler" 내보내기

PGMODELER_CONF_DIR="$PGMODELER_ROOT/conf" 내보내기
PGMODELER_SCHEMAS_DIR="$PGMODELER_ROOT/schemas" 내보내기
PGMODELER_LANG_DIR="$PGMODELER_ROOT/lang" 내보내기
PGMODELER_TMP_DIR="$PGMODELER_ROOT/tmp" 내보내기
PGMODELER_PLUGINS_DIR="$PGMODELER_ROOT/플러그인" 내보내기
PGMODELER_CHANDLER_PATH="$PGMODELER_ROOT/pgmodeler-ch" 내보내기
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$PGMODELER_ROOT" 내보내기
내보내기 경로=$PATH:$PGMODELER_ROOT

#pgModeler 실행
모델러

전체 기사는 다음과 같습니다.http://www.pgmodeler.com.br/wiki/doku.php?id=installation

답변2

내 첫 번째 추측은 64비트 시스템에서 32비트 버전을 다운로드했거나 그 반대로 다운로드했다는 것입니다. 64비트 시스템에서 32비트 바이너리를 실행할 수 있습니다.만약에32비트 라이브러리를 설치했지만 64비트 pgModeler가 있으므로 약간 어리석습니다.

나는 다음과 같이 가정한다:

나는 모든 의존성을 가지고 있습니다

자신이 아닌 우분투를 통해 설치했다는 뜻입니다. 이 경우 링커에 문제가 있을 수 있습니다.

이는 pgModeler를 구성하는 문제가 아닙니다. 라이브러리가 올바르게 설치되면 링커는 해당 라이브러리를 찾을 것이며 pgModeler는 라이브러리가 어디에 있는지 알 필요가 없습니다. 올바르게 설치되지 않은 경우 pgModeler에게 해당 위치를 알려주는 것은 도움이 되지 않습니다.

답변3

그것을 정의하셨나요 PATH=$PATH:$PGMODELER_ROOT?

그렇다면 다음을 추가해 보세요.

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"$PGMODELER_ROOT"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/Qt5.1.0/5.1.0/gcc_64/lib

도착하다 /etc/profile. Qt5가 설치되어 있는 경우.

답변4

내 솔루션:

  1. 파일명 변경pgmodeler.vars

    $ mv pgmodeler.vars pgmodeler.sh 
    
  2. 파일 줄을 수정합니다. pgmodeler.sh경로는 다음과 같습니다.pgmodeler

    # Specify here the full path to the pgmodeler's root directory
    export PGMODELER_ROOT="/path/to/pgmodeler"
    
  3. 파일 및 소스 저장:

    source pgmodeler.sh 
    
  4. 마지막으로 다음을 실행합니다.

    ./pgmodeler  
    

관련 정보