Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- collectionview
- ribs
- MVVM
- Xcode
- RxCocoa
- 리펙토링
- SWIFT
- uitableview
- 리팩토링
- Human interface guide
- combine
- rxswift
- Observable
- UICollectionView
- swiftUI
- 애니메이션
- swift documentation
- 스위프트
- tableView
- ios
- Refactoring
- 리펙터링
- Clean Code
- uiscrollview
- Protocol
- UITextView
- HIG
- 클린 코드
- map
- clean architecture
Archives
- Today
- Total
김종권의 iOS 앱 개발 알아가기
[iOS - swift] Carthage (카르타고) - 사용 방법 (Cartfile) 본문
1. Carthage (카르타고) - 개념 Cocoapods과 비교하여 이해하기
2. Carthage (카르타고) - 사용 방법 <
카르타고 설치
brew install carthage
카르타고를 통해 프레임워크 빌드하기
- Cocoapods과는 다르게 미리 프레임워크들을 빌드하여 Xcode에서 프로젝트 빌드 시 매번 프레임워크를 빌드하지 않아서 속도에서 유리한 점이 존재
- Cartfile['칼트파일'] 파일이란?
- Cocoapods의 podfile처럼 프레임워크의 이름을 적는 곳
- Carthage에서는 Cartfile이라는 파일을 통해서 의존성을 관리하며, Cartfile은 ODGL(Ordered Graph Data Language)의 한 종류
- ODGL은 들여쓰기로 그래프 형식 데이터를 나타내는 구조화된 텍스트 형식 파일
// https://ogdl.org/
network
eth0
ip 192.168.0.10
mask 255.255.255.0
gw 192.168.0.1
hostname crispin
- Cartfile 추가
- 프로젝트와 같은 디렉토리에 추가
% vi Cartfile
- 설치할 프레임워크가 Alamofire인 경우, Alamofire 깃헙 페이지에 가서 Carthage 검색
- 아래 나와있는 github "Alamofire/Alamofire"를 복사
- 위에서 만든 Cartfile 파일에 복사한 내용 입력
- 카르타고 빌드 실행
carthage update --use-xcframeworks --platform iOS
- 생겨난 파일과 폴더
- Cartfile.resolved
- Carthage 폴더
- Cartfile.resolved
- 빌드된 프레임워크의 버전을 명시해놓은 파일
// Cartfile.resolved
github "Alamofire/Alamofire" "5.6.4"
- Carthage 폴더에는 빌드된 프레임워크의 내용이 존재 (info.plist, ios-arm64 전용, x86 전용 Alamofire의 내용이 존재)
카르타고를 통해 얻은 프레임워크를 연결하기
- Target > General > Frameworks, Libraries, and Embedded Content > + 버튼 클릭
- Add files... 선택
- Carthage/Build/Alamofire.xcframework 선택
- 완성
- 여기서 Embed 옵션의 디폴트는 Embed & Sign으로 설정되어 있음
- dynamic framework인 경우 Embed로하고, static framework는 do not Embed로 설정할 것 (관련 내용은 이전 포스팅 글 참고)
(완료 - 바로 사용 가능)
* 참고
https://github.com/Carthage/Carthage/blob/master/Documentation/Artifacts.md#cartfile
'iOS 응용 (swift)' 카테고리의 다른 글
Comments