iOS

[iOS] 라이브러리 설치하기

핀수 2023. 1. 21. 00:41
728x90
반응형

iOS 개발을 위한 라이브러리를 설치해보자.

안드할 때는 build.gradle에 추가를 해주면 됐다.

찾아보니 iOS는 CocoaPods를 주로 사용하는 것 같더군

CocoaPods

애플 플랫폼 개발 시, 외부 라이브러리를 관리하기 쉽게 도와주는 의존성 관리 도구

다른 것에는 Carthage, Swift PackageManager 가 있다고 한다.

CocoaPods 설치하기

터미널에서 sudo gem install cocoapods 을 입력한다.
cocoapods의 버전을 확인하려면 pod --version을 입력하면 된다.
설치가 완료되면 해당 프로젝트로 이동한다.
pod init 를 입력하고 실행하면 Podfile이 생기는 것을 확인할 수 있다.

라이브러리 추가하기

Podfile을 열면 다음과 같이 나온다.

# Pods for SwiftUIMemo

밑에 추가할 라이브러리를 적어주면 된다.

나는 통신 라이브러리인 Alamofire 를 설치해줄 것이므로

pod 'Alamofire’ 을 입력한다.

그리고 다시 터미널로 가 pod install 명령어를 실행하면 라이브러리가 설치된다.

라이브러리가 제대로 설치되었나 확인하기

제대로 설치됐는지 확인해보기 위해 import를 시켜보겠다.

TroubleShooting

pod init 이 되지 않아요

pod init 명령어를 실행했더니 다음과 같은 오류가 발생했다.

/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface/error_report.rb:34:in `force_encoding': can't modify frozen String (FrozenError)
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface/error_report.rb:34:in `report'
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:66:in `report_error'
    from /Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:396:in `handle_exception'
    from /Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:337:in `rescue in run'
    from /Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:324:in `run'
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run'
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>'
    from /usr/local/bin/pod:23:in `load'
    from /usr/local/bin/pod:23:in `<main>'
/Library/Ruby/Gems/2.6.0/gems/xcodeproj-1.21.0/lib/xcodeproj/project.rb:228:in `initialize_from_file': [Xcodeproj] Unknown object version (56). (RuntimeError)
    from /Library/Ruby/Gems/2.6.0/gems/xcodeproj-1.21.0/lib/xcodeproj/project.rb:113:in `open'
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command/init.rb:41:in `validate!'
    from /Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:333:in `run'
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run'
    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>'
    from /usr/local/bin/pod:23:in `load'
    from /usr/local/bin/pod:23:in `<main>'

sudo gem update xcodeproj

이 명령어 실행 후 다시 init 하는 것은 대부분의 사람들을 위해 일했는데

나는...나를 위해서는 일하지 않았다.

다시 구글링해서 다른 해결책을 찾았다.

Xcode의 버전을 변경하는 것..

오직 이것이 나를 위해 일했다...

Pod install 이 되지 않아요

앗! 에러 발생

Podfile의 두번째 줄, platform 주석을 해제해준다.

import가 되지 않아요

앗! 에러 발생

ㅎ 진심 3보 1에러 ㅎ

또 난리난리브루스를 추다가 더럽혀진 Podfile 한번 지워주고 -> Podfile 삭제하는 법

xcworkspace 로 실행하니 되더이다..

xcdoeeproj 으로 실행하면 build fail 을 맛볼 수 있다.

왜그럴까? 좀 있다 알아보도록 하자..


References

아래 글을 참고하여 작성 되었습니다.

 

[Xcode] CocoaPods(코코아팟) 설치 및 사용 방법

안녕하세요 :)오늘은 CocoaPods 설치 및 사용법에 대해 알아보겠습니다 !Swift 및 objective-c로 iOS / macOS 등 애플 플랫폼을 개발할 때, 외부 라이브러리를 관리하기 쉽도록 도와주는 의존성 관리 도구의

velog.io

 

[iOS]CocoaPod 설치 & 라이브러리 설치

터미널에 sudo gem install cocoapods 을 입력하여 cocoapods를 설치합니다. 터미널에서 해당 프로젝트가 있는 폴더 경로로 이동합니다. 그리고 터미널에서 pod init 을 입력하여 Podfile을 설치해줍니다. 설치

stickode.tistory.com

 

iOS Swift 라이브러리 Alamofire 사용하기

안녕하세요 Gons 입니다. 오늘은 많은 분들이 기다리셨던 Alamofire 입니다. Alamofire 는 http 통신을 하기위해서 사용하는 것인데요. GET , POST , Download , DELETE , PATCH 등 다양한 http 통신을 할 수 있어서

gonslab.tistory.com

 

Pod init & Pod install Failure - iOS Xcode beta 14.0

I have issue while I tried to do pod init or pod install, getting following errors. Using Xcode 14 beta & OS version 12.4. Since after Xcode and OS update have issues, pod install Ignoring ffi...

stackoverflow.com

 

pod install error>>> [!] Unable to determine the platform for the `AdewoleFarmApp` target

I downloaded github amplify.swift, created Podfile per installation instruction, but Cocoapods "pod install" gets the error. Podfile is: # Uncomment the next line to define a global platf...

stackoverflow.com

 

728x90
반응형