우분투 18.04를 사용합니다. 나는 apt를 사용하여 라이브러리를 설치합니다. 예를 들면 다음과 같습니다.
sudo apt install freeglut3-dev
apt는 항상 동적 라이브러리를 설치합니까, 아니면 패키지에 정적 또는 동적 라이브러리가 포함되어 있는지 확인할 수 있습니까?
답변1
관례에 따르면: libfoo1
동적 라이브러리가 포함되고 libfoo-dev
헤더와 정적 라이브러리가 생성됩니다.
libfoo1
이는 단지 런타임 종속성일 뿐이며 동적 라이브러리는 런타임 종속성입니다.
libfoo-dev
빌드 종속성이므로 정적 라이브러리는 빌드/링크 중에만 사용됩니다.
라이브러리에 무엇이 있는지 알고 싶다면 다음을 dpkg
사용하여 설치된 패키지의 내용을 볼 수 있습니다.
$ dpkg -L libfoo1
/usr/lib/x86_64-linux-gnu/libfoo.so.1.0.0
/usr/share/doc/libfoo1/changelog.gz
/usr/share/doc/libfoo1/copywrite
/usr/lib/x86_64-linux-gnu/libfoo.so.1
패키지가 설치되지 않은 경우 이 명령을 사용할 수 있지만 파일 목록을 얻으 apt-file
려면 최근에 사용해야 합니다 .apt update
$ apt-file list libfoo-dev
libfoo-dev: /usr/include/foo.h
libfoo-dev: /usr/lib/x86_64-linux-gnu/libfoo.a
libfoo-dev: /usr/lib/x86_64-linux-gnu/libfoo.so
libfoo.so
(in libfoo-dev
)은 실제로 (in )에 대한 심볼릭 링크일 뿐이며, 그 자체는 libfoo.so.1
( also) libfoo1
에 대한 심볼릭 링크입니다 .libfoo.so.1.0.0
libfoo1