728x90
반응형

Microsoft SEAL 설치

설치

  • Microsoft SEAL을 설치하고 사용을 시작하는 방법에는 여러 가지가 있습니다.
  • 가장 쉬운 방법은 패키지 관리자를 사용하여 라이브러리를 다운로드, 빌드 및 설치하는 것입니다.
  • 예를 들어, vcpkg는 대부분 플랫폼에서 작동하며 최신 Microsoft SEAL 릴리스(C++17만 해당)와 최신 상태를 유지합니다. macOS에서는 Homebrew 도 사용할 수 있습니다.
  • FreeBSD에서는 pkg install seal 를 사용하여 security/seal 을 설치할 수 있습니다.
  • .NET 라이브러리는 다중 플랫폼 NuGet 패키지 로 제공됩니다.
  • 마지막으로 다중 플랫폼 CMake 빌드 시스템을 사용하여 Microsoft SEAL을 수동으로 빌드할 수 있습니다.
    • 자세한 내용은 Microsoft SEAL 수동 빌드를 참조하세요 .

1. NuGet 패키지에서 설치(Windows, Linux, macOS, Android, iOS)

  • .NET 개발자의 경우 Microsoft SEAL을 설치하는 가장 쉬운 방법은 NuGet.org 에서 제공하는 멀티플랫폼 NuGet 패키지를 사용하는 것입니다.
  • 이 패키지를 종속성으로 .NET 프로젝트에 추가하기만 하면 준비가 완료됩니다.

  • Android 및 iOS용 Microsoft SEAL 및 .NET을 사용하여 모바일 애플리케이션을 개발하려면 이 패키지를 Xamarin 프로젝트에 추가하기만 하면 됩니다.
  • Microsoft SEAL C++ 라이브러리와 달리 .NET 래퍼 라이브러리는 64비트 플랫폼에서만 작동하므로 arm64-v8a/ x86_64Android ABI 및 arm64/ x86_64iOS 아키텍처만 지원됩니다.

2. vcpkg에서 설치

  • vcpkg 종속성 관리자를 사용하여 seal을 다운로드하고 설치할 수 있습니다 .
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh  # ./bootstrap-vcpkg.bat for Windows
./vcpkg integrate install
./vcpkg install seal
  • vcpkg의 "seal" 포트는 Microsoft 팀원과 커뮤니티 기여자에 의해 최신 상태로 유지됩니다.

3. Microsoft SEAL 수동 빌드

C++ 구성 요소 빌드

모든 플랫폼에서 Microsoft SEAL은 CMake로 빌드됩니다. 소스 내 빌드도 작동하지만 소스 외 빌드를 사용하는 것이 좋습니다. 아래에서는 Microsoft SEAL을 글로벌(시스템 전체) 또는 로컬(단일 사용자)로 구성, 빌드 및 설치하는 방법에 대한 지침을 제공합니다. 글로벌 설치에는 승격된(루트 또는 관리자) 권한이 필요합니다.

요구 사항

  • 윈도우 : Windows용 C++ CMake 도구가 포함된 Visual Studio 2022
  • 리눅스 : Clang++ (>= 5.0) 또는 GNU G++ (>= 6.0), CMake (>= 3.13)
  • 맥OS/IOS : Xcode 툴체인(>= 9.3), CMake(>= 3.13)
  • 안드로이드 : 안드로이드 스튜디오
  • 프리BSD : CMake (>= 3.13)

참고: Clang++로 컴파일된 Microsoft SEAL은 GNU G++로 컴파일된 것보다 런타임 성능이 훨씬 뛰어납니다.

Microsoft SEAL 구축

Microsoft SEAL이 라는 디렉토리에 복제되었으며 SEAL아래에 제시된 모든 명령은 해당 디렉토리에서 실행된다고 가정 합니다.

다음 명령을 실행하여 해당 머신에 맞는 Microsoft SEAL 라이브러리(소스 외부)를 빌드할 수 있습니다.

cmake -S . -B build
cmake --build build

빌드가 완료된 후 출력 바이너리는 build/lib/및 build/bin/디렉토리에서 찾을 수 있습니다.

다양한 구성 옵션을 지정하여 CMake 빌드 시스템에 전달할 수 있습니다. 이는 아래 기본 CMake 옵션 및 고급 CMake 옵션 섹션에서 설명합니다 .

Microsoft SEAL 설치

시스템에 루트 액세스 권한이 있는 경우 다음과 같이 Microsoft SEAL을 전역적으로 설치할 수 있습니다.

cmake -S . -B build
cmake --build build
sudo cmake --install build

대신 Microsoft SEAL을 로컬에 설치하려면(예: ~/mylibs/) 다음을 수행합니다.

cmake -S . -B build -DCMAKE_INSTALL_PREFIX=~/mylibs
cmake --build build
sudo cmake --install build

Windows에서 빌드 및 설치

Windows에서는 위와 같은 스크립트가 Ninja 또는 "Visual Studio 17 2022" 생성기를 사용하여 Visual Studio용 개발자 명령 프롬프트에서 작동합니다.

닌자 생성기를 사용할 때는 빌드하려는 플랫폼에 따라 적절한 명령 프롬프트를 사용하세요. x64용으로 빌드하려면 x64 Native Tools Command Prompt for Visual Studio 2022 명령 프롬프트를 사용하여 라이브러리를 구성하고 빌드하세요. x86용으로 빌드하려면 x86 Native Tools Command Prompt for Visual Studio 2022 명령 프롬프트를 사용하여 라이브러리를 구성하고 빌드하세요. 닌자용으로 빌드하려면 다음과 같이 입력하세요

cmake -S . -B build -G Ninja
cmake --build build

"Visual Studio 17 2022" 생성기를 사용할 때, 개발자 명령 프롬프트 for VS 2022를 사용하여 라이브러리를 구성하고 구축할 수 있습니다. 기본적으로 생성된 플랫폼은 x64입니다. 아키텍처 플래그 -A <x64|Win32>를 사용하여 원하는 플랫폼을 지정하고, --config <Debug|Release>를 사용하여 원하는 구성을 지정할 수 있습니다.

# Generate and build for x64 in Release mode
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release
# Generate and build for x86 in Release mode
cmake -S . -B build -G "Visual Studio 17 2022" -A Win32
cmake --build build --config Release

Windows에서 라이브러리를 설치하는 것도 잘 작동합니다. 그러나 sudo 명령어를 사용하는 대신, 관리자 권한이 있는 명령 프롬프트에서 cmake --install build를 실행해야 합니다. 파일은 기본적으로 C:\Program Files (x86)\SEAL\로 설치됩니다.

Visual Studio 2022는 CMake 기반 프로젝트를 지원합니다. 메뉴 옵션인 파일 / 열기 / 폴더...를 선택하고 Microsoft SEAL 저장소가 있는 폴더로 이동할 수 있습니다. 폴더를 열면 Visual Studio가 이 프로젝트가 CMake 기반 프로젝트임을 감지하고 SEAL의 메뉴 명령인 Project / CMake 설정을 활성화합니다. 이렇게 하면 다양한 구성을 생성하고 다양한 CMake 옵션을 설정할 수 있는 사용자 인터페이스를 제공하는 CMake 설정 편집기가 열립니다.

빌드가 완료된 후, 출력 정적 라이브러리 seal-.lib는 빌드\lib\ 또는 빌드\lib\Release\에서 찾을 수 있습니다. 애플리케이션과 링크할 때, Microsoft SEAL과 링크하여 CMake를 통해 사용하는 것이 매우 권장됩니다. 또는 네이티브\src(전체 경로)를 추가하고 빌드를 해야 합니다ative\src\는 Microsoft SEAL 헤더 파일을 찾기 위한 디렉토리를 포함합니다.

728x90
반응형

+ Recent posts