Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/ / /
C 드라이버
/ /

방법: 소스에서 libbson/libmongoc 설치

중요

이 페이지에서는 설치하려는 구성 요소를 성공적으로 구성하고 빌드 할 수 있다고 가정하며, 이에 대한 자세한 내용은 소스에서 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 에 대해 다음을 수행합니다.

  1. D 의 최종 경로 구성 요소가 "bin" 또는 "sbin" 인 경우 DD 의 상위 경로로 대체됩니다.

  2. 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 "pkg-config" --variable="pc_path"

$PKG_CONFIG_PATH 환경 변수를 사용하여 추가 디렉토리를 지정할 수 있습니다. 이러한 경로는 기본값 pkg-config 경로 보다 먼저 검색됩니다.

Windows 에서는 HKCU\Software\pkgconfig\PKG_CONFIG_PATHHKLM\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)

라이브러리를 성공적으로 구성 및 빌드하고 적절한 $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 에서 지정한 내용을 재정의합니다.

돌아가기

방법 가이드

이 페이지의 내용