Error: CocoaPods’s specs repository is too out-of-date to satisfy dependencies. (iOS)

아니, 플러터면서 왜 이런 오류가..!

하고 생각할 수 있는 오류를 가져와봤습니다. 협업하면서 한번씩은 겪을 문제인데, 사실 이걸 모르는 분들은 왜 생기는지 몰라할 수 있어서…..

빌드하다가 터지는 녀석…

이런 일이 생기는 건 간단하다. flutter pub이 내가 작업하던 것과 다른 사람이 작업하던 녀석이 충돌해서 그렇다. 내가 개발하다가 넘겨준 부분에 pub 라이브러리를 작업하는 곳에서 새로 업뎃하였다. 그러면서 여러모로 바꿔서 진행한 것도, 새로 추가된 것도 있고..

이러다보니 여러모로 추가된 녀석과 내가 먼저 이용해서 빌드에 이용한 녀석하고 충돌한 거다.

아, 당연하지만, pubspecs.yaml 파일이 충돌한 게 아니다. 이 파일의 내용을 가지고 ios 빌드를 진행해야 하는 CocoaPods가 새로 업뎃해서 받아오고 해야 하는데 그걸 그냥 더 추가하고 넘기는 작업으로만 하다보니 그런 것이다. CocoaPods를 써본 사람들은 알겠지만, 사실 방법 자체는 여러모로 합리적이다. 기존에 이용하는 것들은 이미 .lock 파일로 만들어서 고정해 두고 빠른 작업을 진행하도록 해놓는 것으로 빌드 시간을 단축할 수 있으니깐..

근데 뭐, 내가 쓰다가 이렇게 오류 나면 오류 나는 것이니 풀어줍시다.

내 작업에서 보이면 그냥 오류일뿐…

그럼 어떻게 하는지 하나하나 따라하면 됩니다. 근데 저기서 알려주는 pod repo update는 쳐봤자 오류납니다.

ios 폴더로 들어갑니다.

그리고 이 일의 원흉인 Podfile.lock 파일을 지워줍니다.

그리고는 위와 같이 pod install –repo-update 를 실행해서 repo를 업데이트 해줍니다. 그러면 pubspecs.yaml에 지정한 녀석들을 받아다가 업뎃을 쫙 진행해줍니다.

그리고 나서 다시 플러터 프로젝트의 루트로 올라가서 flutter clean 명령으로 현재 프로젝트의 빌드 관련 정보로 생성한 녀석들을 싹 지워줍니다.

그러고 나서 다시 빌드를 진행하면 문제 없이 빌드되는 것을 알 수 있습니다.

이건 CocoaPods를 좀 이용해보고 하면 금방 해결할 수 있는데, 처음부터 flutter를 접하면서 여러명과 작업하고 그러다 보면 그냥 보이는 오류여서 좀 정리해봤습니다.

간만에 쓴 블로그가 이런 내용인데 도움 좀 되었으면 좋겠군요. ;ㅅ;

요즘 너무 바빠서….

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.