나는 가지고있다LDC2그리고글로벌 개발 센터소스에서 컴파일되어 한 달 전까지 작업 중이었습니다. ldc2와 gdc가 작동하도록 터미널에 설정한 변수를 기억할 수 없다는 점을 제외하고는 아무것도 변경되지 않았습니다.
$ /home/Code/D/gdc/Bin/usr/local/bin/gdc -o t4 t4.d
gdc( ) 를 사용하여 D 소스 코드를 컴파일하려고 하면 다음 오류가 발생합니다.
/home/Code/D/gdc/Bin/usr/local/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.4.5/cc1d: error while loading shared libraries: libmpfr.so.1: cannot open shared object file: No such file or directory
ldc2( /home/Code/D/ldc2/bin/ldc2 -o t4 t4.d
)의 경우:
/home/Code/D/ldc2/bin/ldc2: error while loading shared libraries: libconfig++.so.8: cannot open shared object file: No such file or directory
PATH에 대한 보완인지 DFLAGS에 대한 보완인지는 기억이 나지 않습니다. 어떤 아이디어가 있나요?
답변1
여기서는 필요한 라이브러리를 찾을 수 없기 때문에 컴파일러 실행 파일을 실행할 수도 없습니다. gdc
찾고 libmpfr.so.1
검색 ldc2
합니다 libconfig++.so.8
.
라이브러리가 시스템(예: )에 여전히 존재하는 경우 /home/Code/D/gdc/Bin/usr/local/lib
해당 디렉토리를 환경 변수에 추가할 수 있습니다 LD_LIBRARY_PATH
(대부분의 unice에서는 변수를 이라고 함 DYLD_LIBRARY_PATH
).
LD_LIBRARY_PATH=/home/Code/D/gdc/Bin/usr/local/lib gdc …
gdc
합계를 실행하는 래퍼 스크립트를 작성 ldc2
하거나 다음 항목에 넣을 수 있습니다 ~/.profile
.
export LD_LIBRARY_PATH=/home/Code/D/gdc/Bin/usr/local/lib
시스템 업그레이드 중에 이러한 라이브러리가 나타났다가 사라지면 /usr/lib
필요한 버전을 복원하거나 라이브러리의 새 버전에 맞게 D 도구를 다시 컴파일해야 합니다.