Swifter {Swift Developer}

메뉴

Carthage( 카르테지) 설치 방법

Carthage(카르테지)는 Swift언어기반의 라이브러리 관리도구이다. 코코아 라이브러리 관리도구로 유명한 CocoaPods는 자동으로 작업공간을 생성하고 업데이트하는등의 다양한 기능이 있지만, Carthage는 심플하고 유연하고 불편한 것들을 없앤 도구이다.

그렇다면 왜 Carthage를 사용할까? 그것은 바로 컴파일시간이 짧아지기 때문이다.  이유는 Carthage라이브러리를 설치하면 해당 라이브러리를 미리 빌드하고 프레임웍을 만들어주기 때문에 CocoaPods에 비해 컴파일 시간을 단축시킬 수 있다. 필자도 두가지 라이브러리 관리도구를 같이 사용중인데 한가지 철칙이 있다. Carthage버전 라이브러리가 있다면 Cocoapods 라이브러리를 사용하지 않는다는 것이다.

Carthage는 dynamic framework를 만드는 것으로 iOS8이상 대응이고 그 이하는 도입하기 어렵다. 그런 이유로 iOS앱 개발시 지원운영체제 버전을 iOS8이하버전도 고려한다면 Carthage는 사용할 수 없다.

Carthage 사용시 장점

  • 커뮤니티 활성화가 높다(버그가 있으면 대체로 1일이내 수정 PR이 전송된다)
  • 환경 의존도 낮다 (100% Swift로 되어 있어 CocoaPods와 다르게 각각의 환경에서 Ruby버전차이로 발생하는 문제가 없다)
  • 단순하다 (Carthage 다운로드를 하면 바로 사용가능하다.)

설치방법

1) Homebrew로 설치하기

우선 가장 쉬운 설치방법으로 Homebrew를 추천한다. 우선 ruby가 설치되어 있다는 가정하에 아래 명령어를 입력하여 설치한다.

ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

 

설치가 되어 있는 경우에는 다음과 같은 명령을 입력한다.

brew update

 

만약, 독자가 OS X El Capitan을 사용 중에 아래와 같은 오류가 발생한다면 다음과 같은 명령어를 실행하여 권한처리를 한다.

오류메시지: Error: The /usr/local directory is not writable.

sudo chown -R $(whoami):admin /usr/local

 

이제 카세지를 설치하자.

brew install carthage

carthage1

2) 직접 다운로드하여 설치하기

Homebrew가 없어도 GitHub에서 최근버전의 carthage.pkg를 다운로드하여 직접 설치할 수 있다.

관련URL: https://github.com/Carthage/Carthage/releases

이 글을 작성한 기간에 나온 버전은 0.16.2이다.

라이브러리 설치

cartfile을 만든다 (cartfile에 포함할 라이브러리를 작성한다. Cartfile은 CocoaPods의 Podfile과 비슷하다. 데이터형식은 OGDL이란 구조로 작성한다.

참고사이트: http://ogdl.org/

CARTFILE문법

첫번째 키워드는 github 또는 git을 지정한다.

GitHub에서 호스팅된다면 github를 사용하고 다른 곳에서 호스트된다면 git을 사용한다. 단 github키워드는 브랜치 지정 및 버전을 제한할 수 있다.

Github “Username/Repository Name” “BRANCH_NAME” OR ==/>=/<=/~> [VERSION]

github “Alamofire/Alamofire”

명령 실행으로 라이브러리 설치

프로젝트 루트디렉토리에서 아래 명령을 실행한다.

$ carthage update #ios, mac, tvos등 같은 플랫폼을 지정할 수 있음

$ carthage update –platform ios

설치가 성공적으로 완료되면 carthage/Build, carthage/checkouts라는 2개폴더가 만들어진다.

Carthage/Build : .framework, .framework.dySYM이 생성

Carthage/Checkouts: 라이브러리의 소스코드파일에 여기에 다운로드됨

Xcode 설정

1) Run Script Phase 추가

프로젝트 파일을 열고 TARGETS에서 프로젝트명을 선택한다.

[Build Phases]탭을 선택하고 왼쪽 상단에 있는 [+]을 클릭하고  [New Run Script Phase]를 선택한다.

carthage2

명령입력창에서 /usr/local/bin/carthage copy-frameworks 를 입력한다.

Input Files에 설치하는 프레임워크를 추가한다.

예로 Alamofire 라이브러리를 설치했다. 이에 맞춰 설정하면 Inpu Files에 해당 프레임웍 위치를 추가한다.

$ (SRCROOT)/Carthage/Build/iOS/Alamofire.framework

2) 프레임웍 파일 추가하하기

“General”에서 “Linked frameworks and Libraries”에서 설치된 프레임웍을 [+]버튼을 눌러 추가한다.

carthage5-2

 

이제 소스편집기에서 추가한 프레임웍을 import해서 사용하면 된다.

import Almofire
Facebook Comments

카테고리:   Swift

댓글

죄송하지만 댓글은 닫혀 있습니다.