Files
MaaAssistantArknights/docs/ko-kr/develop/linux-tutorial.md
2026-04-17 22:38:56 +08:00

4.3 KiB
Raw Permalink Blame History

order, icon
order icon
2 teenyicons:linux-alt-solid

Linux 컴파일 가이드

이 가이드는 독자가 일정한 Linux 환경 설정 능력과 프로그래밍 기초를 가지고 있다고 가정합니다! MAA를 직접 컴파일하는 대신 단순히 설치하길 원한다면 사용자 매뉴얼 - Linux 지원를 참고하세요.

::: info 주의 MAA의 빌드 방법은 여전히 논의 중입니다. 이 가이드의 내용은 최신 내용이 아닐 수 있으므로 GitHub workflow file의 스크립트를 참고하는 것이 좋습니다.
또한 AUR PKGBUILD 또는 nixpkgs를 참고할 수도 있습니다. :::

::: info Mac은 tools/build_macos_universal.zsh 스크립트를 사용하여 컴파일할 수 있습니다.
MaaAssistantArknights/MaaMacGui 프로젝트의 README.md를 참고하는 것을 권장합니다. :::

컴파일 과정

:::: steps

  1. 컴파일에 필요한 종속성 다운로드 ::: code-tabs @tab:active Ubuntu/Debian

    sudo apt install cmake
    

    @tab Arch

    sudo pacman -S --needed cmake
    

    :::

  2. 서드파티 라이브러리 빌드

    사전 빌드된 라이브러리를 다운로드하거나 처음부터 컴파일할 수 있습니다.

    • 사전 빌드된 서드파티 라이브러리 다운로드 (권장)

      Note

      상대적으로 최신의 Linux 배포판 (Ubuntu 22.04)에서 컴파일된 동적 라이브러리가 포함되어 있습니다. 시스템의 libstdc++ 버전이 오래되었을 경우 ABI 호환성 문제가 발생할 수 있습니다.
      현재 크로스 컴파일을 기반으로 실행 환경 요구 사항을 낮추었으며, glibc 2.31 (ubuntu 20.04)만 있으면 됩니다.

      python tools/maadeps-download.py
      

    만약 위 방법으로 다운로드한 라이브러리가 ABI 버전 등의 이유로 시스템에서 실행되지 않고, 컨테이너 등을 사용하고 싶지 않다면 처음부터 컴파일을 시도해 볼 수 있습니다.

    • 서드파티 라이브러리 직접 빌드 (오랜 시간이 소요됩니다)

      git clone https://github.com/MaaAssistantArknights/MaaDeps
      cd MaaDeps
      # 시스템 환경이 너무 낮아 사전 빌드된 llvm 20을 사용할 수 없는 경우, 크로스 컴파일을 사용하지 않고 로컬 컴파일 환경을 직접 사용해 보세요.
      # src/MaaUtils/MaaDeps/cmake의 toolchain 구성을 조정해야 합니다.
      python linux-toolchain-download.py
      python build.py
      
  3. MAA 컴파일

    cmake -B build \
        -DINSTALL_RESOURCE=ON \
        -DINSTALL_PYTHON=ON \
        -DCMAKE_TOOLCHAIN_FILE=src/MaaUtils/MaaDeps/cmake/maa-x64-linux-toolchain.cmake
    cmake --build build
    

    MAA를 대상 위치에 설치합니다. MAA는 LD_LIBRARY_PATH를 지정하여 실행하는 것을 권장하며, 관리자 권한을 사용하여 MAA를 /usr에 설치하지 마세요.

    지금은 실행 시 LD_LIBRARY_PATH를 지정할 필요가 없을 수도 있습니다.

    cmake --install build --prefix <target_directory>
    
  4. 若需调试 MaaFwAdbControllerMaaFramework 触控模式)相关功能,需要自行编译 MaaFramework 的 Debug 版本,将 libMaaAdbControlUnit.so 放到安装目录下。

::::

통합 문서

문서라고 부르기도 애매한

Python

Python demo에서 __main__의 구현을 참고하세요.

C++

CppSample의 구현을 참고하세요.

C#

MaaWpfGui의 구현을 참고하세요.