중요
이 페이지에서는 설치하려는 구성 요소를 성공적으로 구성하고 빌드 할 수 있다고 가정하며, 이에 대한 자세한 내용은 소스에서 C 드라이버 라이브러리 빌드하기 튜토리얼 페이지에 설명되어 있습니다. 이 튜토리얼에서는 소스 빌드와 최소 설치 작업을 안내하지만, 이 페이지에서는 이러한 소스 빌드 에서 mongo-c-driver
라이브러리를 설치하기 위한 뉘앙스와 사용 가능한 옵션에 대한 자세한 지침 을 제공합니다.
mongo-c-driver
uses CMake to generate its installation rules, and installs a variety of artifacts of interest. For integration with downstream programs, the config file packages and pkg-config files would be of particular interest.
CMake 또는 pkg-config를 통해 libbson
또는 libmongoc
를 가져오려는 경우 각 도구가 패키지 메타데이터를 검색하는 방법을 알고 있으면 도움이 될 수 있습니다.
CMake는 환경과 구성 시 CMake 설정 모두에서 읽는 접두사 설정하다 를 기반으로 검색 경로 설정하다 를 빌드합니다.
특히 $PATH
환경 변수는 시스템의 표준 접두사를 구성하는 데 사용됩니다. $PATH
의 각 디렉토리 D
에 대해 다음을 수행합니다.
D
의 최종 경로 구성 요소가 "bin
" 또는 "sbin
" 인 경우D
는D
의 상위 경로로 대체됩니다.D
Atlas Search 접두사로 추가됩니다.
이로 인해 $PATH
의 일반적인 Unix 전용 디렉토리(예: /usr/bin
및 /usr/local/bin
가 결국 CMake가 Atlas Search에서 /usr
및 /usr/local
접두사를 접두사로 사용하게 되는 효과가 있습니다. $PATH
에 $HOME/.local/bin
디렉토리가 있는 경우 $HOME/.local
디렉토리도 Atlas Search 경로에 추가됩니다. 가 $HOME/.local/bin
있는 $PATH
것은 많은 Unix 셸에서 점점 더 일반적인 패턴이며, 설치에 권한 없는 사용자-로컬 설치 접두사 사용(권장) 을 사용하려는 경우에 권장됩니다.
또한 CMAKE_PREFIX_PATH
환경 변수 를 사용하여 경로 목록을 구성합니다. 기본값 으로 이 환경 변수는 정의되어 있지 않습니다.
Windows 에서는 %ProgramW6432%
, %ProgramFiles%
, %ProgramFiles(x86)%
, %SystemDrive%\\Program Files
및 %SystemDrive%\\Program Files (x86)
디렉토리도 추가됩니다. (이 값은 CMake의 플랫폼 감지 중에 정의되는 CMAKE_SYSTEM_PREFIX_PATH
CMake 변수에서 가져옵니다.)
팁
For detailed information on package lookup, refer to CMake's search procedure section for full details.
The pkg-config
command-line tool looks for .pc
files in various directories, by default relative to the path of the pkg-config
tool itself. pkg-config
가 기본값 검색 할 디렉토리 목록을 가져오려면 다음 명령을 사용합니다.
$ pkg-config "pkg-config" --variable="pc_path"
$PKG_CONFIG_PATH
환경 변수를 사용하여 추가 디렉토리를 지정할 수 있습니다. 이러한 경로는 기본값 pkg-config
경로 보다 먼저 검색됩니다.
Windows 에서는 HKCU\Software\pkgconfig\PKG_CONFIG_PATH
및 HKLM\Software\pkgconfig\PKG_CONFIG_PATH
레지스트리 키를 사용하여 pkg-config
에 대한 추가 검색 디렉토리를 지정할 수 있습니다. 사용자별 검색 디렉토리를 유지하려면 HKCU\…
키에 디렉토리를 추가하는 것이 좋습니다.
팁
If you have man
and pkg-config
installed on your system, lookup procedures are detailed in man 1 pkg-config
. This documentation may also be found at many man page archives on the web, such as pkg-config at linux.die.net.
접두사 선택
사용자 로컬 설치 디렉토리 를 $PREFIX
이라고 합니다. 이 디렉토리 의 경로를 선택하는 것은 다소 임의적이지만 고려해야 할 몇 가지 권장 사항이 있습니다. $PREFIX
디렉토리 는 다운스트림 프로젝트 를 구성할 때 CMake 또는 pkg-config
에 제공할 경로입니다.
권한이 없는 사용자-로컬 설치 접두사 사용(권장)
사용자 계정에 특정한 권한이 없는 파일 시스템 위치 에 사용자 지정 빌드된 mongo-c-driver
라이브러리를 설치하는 것이 좋습니다.
다른 Unix 계열 시스템과 달리 macOS에는 사용자 로컬 패키지 설치를 위한 특정 디렉토리 가 없으며 이러한 디렉토리를 직접 만드는 것은 개인의 몫입니다.
사용할 디렉토리 선택은 기본적으로 임의적입니다. 사용자별 설치의 경우 유일한 요구 사항은 설치를 수행하고 사용하려는 사용자가 디렉토리 를 쓸 수 있어야 한다는 것입니다.
For the purposes of uniformity with other Unix variants, this guide will lightly recommend using $HOME/.local
as a user-local installation prefix. This is based on the behavior specified by the XDG base directory specifications and the systemd file-hierarchy common on Linux and various BSDs, but it is not a standard on other platforms.
On Linux and BSD systems, it is common to use the $HOME/.local
directory as the prefix for user-specific package installations. This convention originates in the XDG base directory specification and the systemd file-hierarchy
이 가이드에서는 다른 많은 도구에서 널리 사용되고 지원되므로 $HOME/.local
를 사용자 로컬 설치 접두사로 사용할 것을 권장합니다.
Windows 의 경우 %UserProfile%\\AppData\\Local
에 사용자 로컬 파일을 위한 전용 디렉토리 가 있습니다. 이를 참조하려면 %LocalAppData%
환경 변수를 확장합니다. ( %AppData%
환경 변수를 사용 하지 마세요 !)
이 디렉토리 가 존재함에도 불구하고 목적에 맞는 규정된 구조가 없습니다. 사용자 로컬 설치 접두사는 임의로 선택할 수 있습니다. 이 가이드 에서는 사용자의 홈 디렉토리 내에 직접 추가 파일과 디렉토리를 생성 하지 않을 것을 적극 권장 합니다.
수동으로 설치한 구성 요소의 경우 %LocalAppData%\\MongoDB
를 접두사로 사용하는 것이 좋습니다.
시스템 전체 설치 접두사 선택
모든 사용자가 볼 수 있는 디렉토리 에 mongo-c-driver
라이브러리를 설치하려는 경우 몇 가지 표준 옵션이 있습니다.
/usr/local/
의 $PREFIX
설치를 사용하는 것이 모든 Unix 플랫폼에 대한 주요 권장 사항이지만, 이는 잘 알려지지 않은 시스템에 따라 다를 수 있습니다.
경고
/usr/
또는 /
( 루트 디렉토리)를 접두사로 사용 하지 마십시오 . 이러한 디렉토리는 시스템에서 신중하게 managed 하도록 설계되었습니다. /usr/local
디렉토리 는 관리되지 않는 소프트웨어 설치를 위해 의도적으로 예약되어 있습니다.
또는 /opt/mongo-c-driver/
와 같이 쉽게 제거하거나 재배치할 수 있는 고유한 디렉토리 에 설치하는 것이 좋습니다. 이는 쉽게 식별할 수 있으며 명시적으로 옵트인하지 않으면 시스템의 다른 소프트웨어와 상호 작용 수 없습니다.
경고
Windows 시스템 전체에 소프트웨어를 수동으로 설치 하는 것이 좋습니다 . 대신 사용자별 권한 없는 설치 접두사를 사용하는 것이 좋습니다.
Windows 에서 시스템 전체에 설치를 수행하려는 경우, 읽기 및 쓰기 (write) 에 관리 권한이 필요하지 않은 %ProgramData%
의 명명된 하위 디렉토리를 사용하는 것이 좋습니다. (예: %ProgramData%\\mongo-c-driver
)
CMake로 설치
라이브러리를 성공적으로 구성 및 빌드하고 적절한 $PREFIX
을 선택한 후에는 빌드된 결과를 설치할 수 있습니다. $BUILD
라는 이름이 빌드를 실행한 디렉토리(이 디렉토리에는 다른 많은 파일들 중에서도 CMakeCache.txt
가 포함되어 있음)를 참조하도록 합니다.
명령줄 에서 선택한 $PREFIX
에 대한 설치는 CMake를 통해 cmake --install subcommand
옵션을 사용하여 실행 수 있습니다.
$ cmake --install "$BUILD" --prefix "$PREFIX"
중요
다중 구성 생성기 (예: Visual Studio, Xcode)를 사용하는 동안 라이브러리를 구성한 경우 --config
명령줄 옵션과 설치하려는 빌드 구성에 대한 값도 전달해야 합니다. . 설치에 사용된 --config
의 선택한 값의 경우, 이전에 해당 디렉토리 내에서 동일한 --config
값으로 cmake --build
를 실행한 적이 있어야 합니다.
참고
시스템 전체 설치 $PREFIX
를 사용하기로 선택한 경우 권한이 있는 사용자로 설치를 실행해야 할 수 있습니다. 권한이 있는 사용자로 설치를 실행할 수 없거나 실행 실행 않으려면 사용자별 설치 접두사를 사용해야 합니다.
팁
cmake --install
--prefix
명령줄 옵션을 사용하는 경우 CMAKE_INSTALL_PREFIX
을 설정할 필요가 없습니다. --prefix
옵션은 프로젝트 구성 시 CMAKE_INSTALL_PREFIX
에서 지정한 내용을 재정의합니다.