본문 바로가기

ToyProject

[Flutter] mac 개발 환경설정

 

Flutter - Build apps for any screen

Flutter transforms the entire app development process. Build, test, and deploy beautiful mobile, web, desktop, and embedded apps from a single codebase.

flutter.dev

 

플러터 인스톨 전에 Xcode가 제대로 설치되어 있는지 확인이 필요하다

 

 

지난번에 빅서로 업그레이드 하다가 벽돌된 전력이 있어 아직 카탈리나인 나의 맥북 

 

Xcode Releases

More than you ever wanted to know™

xcodereleases.com

여기서 본인 버전에 맞는 xcode를 다운받아준다

다시 플러터 창으로 돌아와서 맥os버전으로 다운

압축을 다 풀어준 다음에 study 폴더에 새로 만든 flutter 폴더로 옮겨줄건데

shift + cmd + . 으로 숨김폴더 및 파일까지 다 선택해서 옮겨준다

 

 

그 다음은 경로를 잡아줄건데 아래에 나와있는 명령어는 플러터 프로젝트 시작 할 때마다 잡아줘야 한다.

귀찮은 관계로 이왕 하는거 영구히 잡아주는게 좋을 것 같다 Update your path 로 들어가자

나는 zsh를 쓰는 관계로 .zshrc로 환경변수를 설정해주기로

(홈에 숨김파일로 있음)

 

텍스트 편집기 열어서 경로를 설정해주자 

 

경로 설정 저장 후에 터미널에 flutter 치면 사용가능한 명령어들이 뜨는데 

뜨지 않는 경우 환경설정이 제대로 된 것이 아니니 경로를 다시 확인해야한다

 

sdk 설치를 마쳤다면 이제 본격적으로 환경설정을 해 줘야한다

(*Xcode 설치가 되어있어야 함) 

 

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

 

xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

위의 명령어를 쳤는데 xcode-select를 찾을 수 없다는 오류가 떴다.

xcode-select -p 로 경로를 확인해 보니 뭘 크게 잘못한건 아니였고.

이전 버전을 다운로드 받는 과정에서 xcode가 Application 폴더가 아닌 Library에 들어있었던 것 

옮겨주고 나서 다시 실행시키니 잘 된다 

 

sudo xcodebuild -license

누르면 약관들이 쭈르르르르르-륵 나오는데 space 누르다가 맨 막줄로 내려가서 

agree 입력하면 끝

 

이번에는 iOS 시뮬레이터를 준비할건데 아래의 명령어로 가상 아이폰을 연다고 보면 된다

open -a Simulator

 

Android앱도 배포해야하기 때문에 이번에는 Android 시뮬레이터를 설치해보기로 한다

 

 

Download Android Studio and SDK tools  |  Android Developers

The official IDE for Android app developers.

developer.android.com

 

인스톨 타입은 custom으로 설정해준다

설치 경로는 그냥 기본 제공하는 경로로 두었고

setup에서는 Android Virtual Device까지 체크하고 다음으로 넘어간다

(근데 나는 왜 이미 설치 되어 있는걸까.....?)

 

SDK Manager에 들어가면 다른버전을 다운받을 수도 있다 

Virtual Device Manager로 들어가면 앞으로 테스트에 사용할 가상 디바이스를 설정할 수 있다

좌측의 create device 를 선택해서 기기들을 추가해준다

 

잘모르겠고 일단 만만한 기기 & 최신버전으로 다운로드 해줬다

기본은 세로 형태로 ㅎㅎ 

이제 실행을 누르면 옆에 디바이스가 뜨는걸 확인 할 수 있다 

 

이렇게 flutter실행을 위한 준비단계가 다 끝난 듯 한데 확인을 위해 아래의 명령어를 실행한다

flutter doctor

왤까. 왜 한 번에 되는건 없을까 ...

친절하게도 어떤 부분에서 문제가 되고 또 어떻게 해보면 좋을지 차근차근 일러주고 있기 때문에!

늘 답은 오류 안에 적혀있다는 사실을 기억하며 마음을 다잡아본다

 

우선, 안드로이드 라이센스를 확인해봐야한다. 그리고 xcode에서 사용하는 coocapod라게 업데이트가 필요한 모양이다

 

SDK Manager 들어와서 SDK Tools 들어간 후 Android SDK Command-line Tools 체크

다운로드가 완료되면 터미널 종료 후 재시작을 해 준 다음 

flutter doctor --android-licenses

약관 동의 문구들 잔뜩 나오고 모두 y 입력하면 끝

 

이제 다시 닥터!

더이상 안드로이드 관련한 오류를 볼 수 없다 후후 

이제 코코아패드 부분을 해결하자 

 

 

CocoaPods Guides

CocoaPods is fully open-sourced, so it depends on community contributions to get better. If you're looking to start working on CocoaPods, this is the place to start.

guides.cocoapods.org

sudo gem install cocoapods

얾..ERROR: Failed to build gem native extension.

그니까 왜요..... xcode-select도 설치 되어있는데 뭐가 문제란 말인가 

 

 

 

ERROR: Error installing cocoapods: ERROR: Failed to build gem native extension

I am trying to install cocoapods to my MacBook Pro running with OSX 10.9.1 (new Mavericks) and after type gem install cocoapods I get the following error: Building native extensions. This could

stackoverflow.com

하지만 역시 난 적 없는 에러 없고 해결되지 않은 오류 없다고 스택오버 플로우에서 비슷한 상황을 찾아 볼 수 있었다

Brew로 다운로드 받아보라는 조언

 

 brew cleanup -d -v 
brew install cocoapods 

하. 근데 아직 오류난다

Catalina에 맞는 Xcode 버전 중 가장 높은게 12.4라서 다운로드 받은건데 

최소 13.0.0이 있어야 한다는 이야기를 한다. 아 진짜 다시 한 번 업그레이드 도전해야하나 

 

 

Flutter recommends a minimum Xcode version of 13. · Issue #93209 · flutter/flutter

MacOS Catalina V10.15.7 iMac (27-inch, Late 2013) Flutter web: Doesn't work after upgrade. [✓] Flutter (Channel master, 2.6.0-12.0.pre.618, on Mac OS X 10.15.7 19H1519 darwin-x64, locale ko-KR)...

github.com

..........Catalina OS에서 된다면서요 안되는데요 

 

결국 Big sur로 업그레이드 진행했다

No isssues found 까지 지난한 시간들 함께 해주셔서 감사합니다