이 게시물은 Apple M2 / Ventura 13.0(22A380) / 2023.7.6 기준으로 작성했습니다.
리액트 네이티브 설치버전 : 0.72.1v
RN 공식 사이트 설치 방법
-> 참고해서 최대한 공식대로 설치하기(강의랑 내용이 좀 다름)
있다면 최신버전으로 업그레이드해준다.
내 버전 : Homebrew 4.0.27
Homebrew/homebrew-core (git revision 19885e8ef60; last commit 2023-04-19)
Homebrew/homebrew-cask (git revision 77854aca27; last commit 2023-04-18)
Node 16 이상이어야 한다고 함 (공홈 참고)
내 버전 : v20.1.0
내 버전 : 2023.05.01.00
이미 설치되어있다면 버전 확인
내 버전 : Version 14.3 (14E222b)
강의에서는 리액트 네이티브 공식 깃허브에서 리액트 네이티브 버전을 확인하는데
지금은 저 폴더와 파일이 없다;
현재 기준 Gemfile.lock 파일에 3.2.0 이라고 루비 버전이 써져있는 것을 확인
내 버전 : ruby 2.7.6p219 (2022-04-12 revision c9c2245c0a) [arm64-darwin22]
루비 버전을 업그레이드하기로 한다.
rbenv 깃허브 들어가서 버전 업그레이드 방법 확인
https://github.com/rbenv/rbenv
# Load rbenv automatically by appending
# the following to ~/.zshrc:
eval "$(rbenv init - zsh)"
sudo gem install cocoapods
로그에 나와있는 대로 업데이트 진행
gem update --system 3.4.15
npm uninstall -g react-native-cli @react-native-community/cli
일단 나는 다시 처음부터 까는 상태이기 때문에 제거해준다.
npx react-native@latest init AwesomeProject(프로젝트이름)
vscode로 프로젝트를 킨다
다음과 같은 로그가 뜬다.
RVM used your Gemfile for selecting Ruby, it is all fine - Heroku does that too,
you can ignore these warnings with 'rvm rvmrc warning ignore /Users/bplus-dahyejang/Desktop/dev/RN/NewInstaApp/Gemfile'.
To ignore the warning for all files run 'rvm rvmrc warning ignore allGemfiles'.
Unknown ruby interpreter version (do not know how to handle): >=2.6.10.
Gemfile을 아까 설치한 루비 버전으로 변경해준다.
껏다가 다시 켜니 이번엔 새로운 로그가 나온다.
Required ruby-3.2.0 is not installed.
To install do: 'rvm install "ruby-3.2.0"'
프로젝트에서 터미널로 루비 버전을 확인해보니, 3.2.0이 적용되어 있지 않은 것을 확인할 수 있었다.
다음과 같이 입력한다
source ~/.zshrc
ruby -v
입력하면 다음과 같이 변경된다.
끄고 다시 vscode를 들어가니 루비 버전이 그대로다. 왜이러지??
로그에 뜨는 rvm install "ruby-3.2.0" 이 명령어를 실행해보기로 한다.
rvm install "ruby-3.2.0"
해결이 안된다;;;휴...
위에 나와있는 부분을 실행해준다
결론 > 해결안됌
https://rvm.io/rubies/default rvm 공식문서 참고해서 다음과 같이 진행해보았다.
rvm reset도 시도함
하지만 위를 시도하니 ruby -v를 치면 내가 아까 설치한 루비 버전으로 나온다.
파일을 만드니 unknown~~ 에러는 없어졌으나 설치 안되어있다고 나옴.
하지만 ruby 버전을 확인하면 3.2.0이라고 제대로 나옴
도저히 알수없어서..그냥 여기서 멈추고 실행해보기로 한다
vscode에서 터미널 두개를 켠 후,
하나는 매트로, 하나는 ios 시뮬레이터를 실행해준다.
npm start
npm run ios
제대로 실행됐다! 위 오류는 그냥 무시해도 될 것 같다..