ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 플러터(Flutter) 설치하기(맥OS)
    개발/Flutter 2024. 1. 15. 00:31

    Flutter SDK 다운로드

    1. SDK 파일 다운로드

    플러터 공식사이트에서 SDK파일을 다운받습니다.

    https://docs.flutter.dev/get-started/install/macos/desktop?tab=download

    경로: Get started > Install > macOS > Desktop

     

    현재 설치하려는 맥 OS의 프로세서(Intel/Apple Silicon)를 확인해주세요. 

    저는 Intel 사용환경이기 때문에 좌측 SDK파일을 다운받았습니다. 

    M1, M2 사용하시는 분들은 우측 Apple Silicon 파일 다운받아주세요.

    프로세서별 설치 파일

    2.  SDK 압축 풀기

    원하는 곳에 파일을 옮겨 압축을 풀어줍니다.

    1. 필자는 Documents/Flutter_SDK 하위에 압축해제(unzip)
    2. Documents/Flutter_SDK/flutter 폴더 생성

    3. 홈브루(Homebrew) 설치

    플러터 설치를 간단하게 만들어주는 맥OS용 패키지 관리자 홈브루 설치해야 합니다.

    홈브루는 터미널로 간단하게 설치가 가능합니다. 

    터미널을 열어 설치 명령어를 붙여넣어주세요.

    * 터미널(Terminal) 열기: Cmd + Space > Terminal(응용프로그램)

    홈브루 설치 사이트
    https://brew.sh/ko/
     

    Homebrew

    The Missing Package Manager for macOS (or Linux).

    brew.sh

    홈브루 설치 명령어
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

     

    명령어를 붙여넣고 Password라는 문구가 나오면 컴퓨터 비밀번호를 입력해주세요.

    비밀번호를 입력해도 화면에는 나타나지 않습니다. 당황하지 마세요!

     

    Press Return/Enter to Continue or any other keys to abort: 라는 문구가 나오면

    엔터를 눌러서 설치를 이어서 진행해주세요.

    설치를 완료하면 이런 문구가 보일텐데요.

    경로를 설정해주어야 합니다.

    아래 문구를 복사해서 입력해 줍니다.

    echo 'eval "$(/usr/local/bin/brew shellenv)"' ) >> / Users/사용자이름/.zprofile eval "$(/usr/local/bin/brew shellenv)"

    무슨 이유에서인지 문구를 복사해도 path가 없다는 오류가 나와서 타 블로그를 참고하여 아래 명령어를 추가해주었습니다.

    (zsh설정 파일 제일 하단에 export PATH=/opt/homebrew/bin:$PATH라는 문구를 추가해주겠다는 명령어)

    $ ~/.zshrc
    $ export PATH=/opt/homebrew/bin:$PATH

     

    이후 버전확인을 해보았더니 4.2.3 버전으로 나온 것을 확인 할 수 있었습니다.

    brew --version을 입력하고, 버전이 나타나면 (2022.04.12 기준 3.4.6) 설치 완료입니다!

    $ brew --version

     

    4. 홈브루 명렁어 실행

    아래 커맨드를 순차적으로 실행해줍니다.

    각 커맨드별로 🍺  (android-sdk) was successfully installed! 라는 문구가 나오면 성공입니다.

    brew install --cask android-studio
    brew install --cask android-SDK
    brew install --cask android-ndk
    brew install --cask flutter

     

    5. 현재 설치상태 확인

    flutter doctor

    6. 안드로이드 툴체인 문제해결 (Android Toolchain) 

    우선, Android toolchain 이슈 중에서 cmdline-tools component is missing 이슈를 해결해봅시다.

     

    Android Studio > Plugins > Flutter Install

    아마 플러그인을 설치해도 동일한 문제가 계속 발생할 것이다.

     

    Android SDK Command-line Tools(latest)를 적용해준다.

    Android Studio > Customize > All settings > Appearance Behavior > System settings > Android SDK > SDK Tools > Android SDK Command-line Tools(latest) Apply

     

    Customzie에서 All settings 클릭

    Android SDK Command-line Tools(latest)가 설치되지 않은 상태(Not Installed)를 확인할 수 있습니다.

    Apply 해주세요.

    OK 클릭

    동의(Accept)하고 넘어가주세요.

    설치가 완료되면 종료(Finish)를 클릭하여 마무리 해주세요.

     

    안드로이드 스튜디오에서 Flutter 플러그인을 설치하고 Flutter Doctor를 통해 다시 확인합니다.

    cmdline-tools component is missing 이슈가 보이지 않으니 잘 해결되었습니다.

    다만, 아래 명령어를 실행해서 Some Android licenses를 허용해 달라고 하네요.

    flutter doctor --android-licenses

     

    Review licenses that have not been accepted (y/N)? 라는 질문이 나오면 모두 Y를 눌러주세요.

    All SDK package licenses accepted 라는 문구가 나오면 성공입니다.

    Flutter Doctor를 통해 다시 확인합니다.

    Android toolchain이 모두 해결된 것을 확인할 수 있습니다.

     

    7. Xcode 문제해결

    다음으로 아래 Xcode 이슈를 해결해봅시다.

    저는 일단 Xcode가 설치되지 않은 상태였으므로 Xcode를 설치 후에 flutter Doctor를 소환하겠습니다.

     

    Xcode는 Appsotre에서 간단하게 다운받으실 수 있습니다. 

     

     

    7-1. Xcode end user license agreement not signed 문제해결

    Xcode end user license agreement not signed; open Xcode or run th command 'sudo xcodebuild -license'.

     

    Xcode 설치 이후에 flutter doctor를 돌려보니 에러 문구가 바뀌었습니다. 

    제일 처음 문구를 보면, user license에 동의하지 않았으니 터미널에 'sudo xcodebuild -license'를 입력하라고 나오네요.

    $ sudo xcodebuild -license

     

    위 명령어 입력 후 패스워드를 입력해 주세요.

    그러면 아래 문구가 나올텐데,  Enter를 눌러주세요.

    You have not agreed to the Xcode and Apple SDKs license. You must agree to the license below in order to use Xcode.
    Press enter to display the license:
    Enter

     

    이후 라이선스 동의 내용이 길게 나오고

    마지막 문장이 나오면 agree 해주세요.

    By typing 'agree' you are agreeing to the terms of the software license agreements. Any other response will cancel. [agree, cancel]
    agree

     

    아래 문구가 나오면 성공입니다!

    You can review the license in Xcode’s About window, or at: /Applications/Xcode.app/Contents/Resources/en.lproj/License.rtf

     

    flutter doctor를 돌려보면 'Xcode end user license agreement not signed...' 관련 내용은 사라진 것을 확인할 수 있습니다.

     

    7-2. Xcode  Unable to get list of installed Simulator runtimes 문제해결

    Unable to get list of installed Simulator runtimes.

     

    위 문구를 해결하기위해서는 아래 명령어를 순차적으로 입력하면 된다던데...

    오류가 나는 사람들이 다수 있는 것 같다.

    sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
    sudo xcodebuild -runFirstLaunch

     

    필자도 오류가 계속되어서

    아래의 다른 명령어로 직접 Simulator를 다운받아주었다.

    xcodebuild -downloadPlatform iOS

     

     

    아래와 같은 다운로드 완료 문구를 확인하면 성공! 

    Downloading iOS ** Simulator(****): Done

     

    flutter doctor를 돌려보면 'Unable to get list of installed Simulator runtimes.' 관련 내용은 사라진 것을 확인할 수 있습니다.

     

    7-3. CocoaPods not installed 문제해결

    CocoaPods is not installed.

     

    설치는 생각보다 어렵지 않다는데요, 아래 명령어를 입력해 줍니다.

    이후 비밀번호도 입력해 줍니다.

    sudo gem install cocoapods

     

    저같은 경우는 CocoaPods 설치가 꽤나 시간이 걸리더군요.

    인내심을 가지고 기다려주세요. 

    오래 기다렸지만,, Error instaling cocoapods 문구가 보이네요.

    타 블로그 찾아보니 macOS Catalina 부터 CocoaPods 가 정상적으로 설치되지 않는 경우가 있다고 합니다.

    Homebrew를 이용하여 다시 설치해주겠습니다. 

    brew install cocoapods

     

    설치가 잘 되는가 싶더니 Warning이 몇개 떴습니다.

    대충 link this version 하라는 것 같습니다.

    아래 명령어를 입력해서 링크시켜줍니다.

    brew link cocoapods

     

    그러면 아래처럼 몇가지 조건이 나오는데, 강제로 덮어씌우는 방법을 선택하겠습니다.

     

    덮어씌우는 명령어를 입력해주세요.

    brew link --overwrite cocoapods

     

    아래와 같이 Linking 했다는 문구가 나오면 성공입니다.

     

    아래 명령어를 통해 cocoapods의 버전을 확인해보면 최종 설치된 버전을 확인할 수 있습니다.

    pod --version

     

     

    8. flutter doctor 최종 확인

    마지막으로 flutter doctor를 소환하여 이슈가 모두 해결되었음을 확인합니다.

    No issues found! 

     

     

     

    모두... 고생 많으셨습니다(꾸벅)

Designed by Tistory.