개요
dev.to/amanhimself/setup-macbook-m1-for-web-and-react-native-development-8la
M1을 구입 후 React Native를 위 주소를 참고로 경험한 부분, 번역 및 조사 위주로 작성하였습니다.
Rosetta 2
Rosetta2 는 x86 ARM 기반 칩에서 아키텍처를 사용하는 Intel 기반 칩용으로 설계된 앱을 위한 프로세스 입니다.
M1에 사전 설치되어 제공하지 않아 수동으로 설치하여야합니다.
저는 reactnaitve 설정을 하면서 따로 Rosetta2를 사용하지는 않았습니다.
아래 명령어를 Terminal 에서 입력하여 실행하여 설치 할 수 있습니다.
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
iTerm
iTerm은 터미널과 동일하지만, 분할 창, 핫키 창, 검색, 자동완성, 색상 변경 등 추가적인 기능을 제공합니다.
더 확인하고자 한다면 iterm2.com/features.html 주소를 참고하세요.
저는 Mac을 사용하면서 teminal을 빌드 할 때만 사용하다보니 설치 후 사용한 적이 없습니다.
Rosseta2 기반으로 teminal을 사용 할 수 있습니다.
Homebrew
brew.sh/2020/12/01/homebrew-2.6.0/
2020년 12월 1일, Homebrew 2.6.0 버전에서 macOS M1 / Apple Silicon / ARM대한 지원을 시작했습니다.
Homebrew는 mac에서 프로그램의 의존성이나 검색 그리고 설치 및 삭제를 쉽게 할 수 있도록 도와주는 패키지 매니저 프로그램입니다.
아래 명령어를 통해 설치 할 수 있습니다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Git
홈 브류를 설치 후 아래 명령어를 통해 Git을 설치 할 수 있습니다.
brew install git
Xcode
Xcode는 Apple의 App Store에서 설치 할 수 있습니다. 저는 앱 스토어에서 다운로드 속도가 너무 느려 개발 사이트에서 다운로드를 하였습니다.
Xcode 설치방법 :
1. http://developer.apple.com/download/more (접속할 시 개발자 가입이 필요합니다.)
2. 다운로드 받을 Xcode버전 선택(Xcode를 다운받을 때는 macOS의 버전을 맞춰서 다운로드를 해야합니다.)
developer.apple.com/kr/support/xcode/ 주소에서 지원하는 macOS의 버전을 확인 할 수 있습니다.
3. 다운로드 받은 파일의 압축을 풀고 Xcode를 응용프로그램에 드래그앤드랍으로 넣으면 설치는 끝이 납니다.
설치 한 후에 아래명령어로 Xcode를 연결합니다.
sudo xcode-select --switch /Applications/Xcode.app
마지막으로, Xcode > Preferences > Locations 탭으로 들어가 Command Line Tools을 none에서 자신의 Xcode 버전으로 변경해줍니다.
VSCode
2021년 2월 VSCode에서 Rosetta2 없이 사용이 가능해졌습니다.
아래 주소에서 다운로드 할 수 있습니다.
code.visualstudio.com/download
Watchman
facebook.github.io/watchman/Watchman은 파일을 감시하고 실제로 변경 될 때 기록하기 위해 존재합니다.
아래 명령어를 통해 설치 할 수 있습니다.
brew install watchman
JAVA
아래 명령어로 jdk를 설치 합니다.
brew install --cask adoptopenjdk/openjdk/adoptopenjdk8
Android Studio
아래 주소로 이동하여 안드로이드 스튜디오를 설치합니다.
m1에서 에뮬레이터를 지원하지 않지만, 실제 기기에서 테스트를 해 볼 수 있습니다.
Pod
마지막으로 Pod 파일을 수정해야합니다. 프로젝트내의 /ios/Podfile 파일을 아래 명령어로 수정합니다.
use_flipper!({ 'Flipper-Folly' => '2.3.0' }) # update this part
post_install do |installer|
flipper_post_install(installer)
installer.pods_project.build_configurations.each do |config| config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64" end
end
후기
개발 환경 설정은 항상 어려운 것 같습니다. 처음 참고한 주소로 설정을 하면, 제대로 되지 않아서 m1을 괜히샀나 intell기반 mac을 살 걸 후회를 하였지만 아직까지는 잘 사용하고 있습니다. 나중에 앱을 실제로 배포 할 때 어떤 문제가 발생 할 지.. 후에 공유하도록 하겠습니다.
글을 읽어주셔서 감사합니다.
'ReactNative' 카테고리의 다른 글
[React Native] PickerSelect 사용하기 (picker) (0) | 2021.06.02 |
---|---|
[React Native] PickerSelect 사용하기 (datepicker) (0) | 2021.06.01 |
개발 일지 2021.3. 4 (도입 화면 구성하기) (0) | 2021.03.04 |
개발 일지 2021.3. 2 (디자인 시스템) (0) | 2021.03.02 |
개발 일지 2021.3.1 (디자인 시스템) (0) | 2021.03.01 |