iOS/Ribs

RIBs 설치, Carthage

곰돌이도한다. 2021. 4. 7. 18:36

1. 프로젝트 생성.

 

2. 터미널 실행, 해당 폴더로 이동

 

3. 터미널 실행 후 Cartfile 생성 및 열기

 

$ touch Cartfile

$ open Cartfile

 

 

4. Cartfile에 내용입력 후 저장

 

github "uber/RIBs" ~> 0.9

 

5. carthage.sh 생성, 프로젝트내에 생성 Carthage와 같은 위치로

(Xcode12에서 빌드 에러로 carthage 명령 대신 실행하기 위해)

참고 : github.com/Carthage/Carthage/issues/3019

 

$ touch carthage.sh

 

 

6. carthage.sh 파일에 아래의 내용 입력 후 저장

(첨부파일 다운받아서 사용해도 됨)

 

carthage.sh
0.00MB

 

#!/usr/bin/env bash

 

# carthage.sh

# Usage example: ./carthage.sh build --platform iOS

 

set -euo pipefail

 

xcconfig=$(mktemp /tmp/static.xcconfig.XXXXXX)

trap 'rm -f "$xcconfig"' INT TERM HUP EXIT

 

# For Xcode 12 make sure EXCLUDED_ARCHS is set to arm architectures otherwise

# the build will fail on lipo due to duplicate architectures.

for simulator in iphonesimulator appletvsimulator; do

    echo "EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_${simulator}__NATIVE_ARCH_64_BIT_x86_64__XCODE_1200 = arm64 arm64e armv7 armv7s armv6 armv8" >> $xcconfig

done

echo 'EXCLUDED_ARCHS = $(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(PLATFORM_NAME)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)__XCODE_$(XCODE_VERSION_MAJOR))' >> $xcconfig

 

export XCODE_XCCONFIG_FILE="$xcconfig"

cat $XCODE_XCCONFIG_FILE

carthage "$@"

 

 

7. 권한설정

$ chmod +x carthage.sh

 

 

8. 업데이트

$ ./carthage.sh update --platform iOS

 

아래처럼 파일들이 생성됨.

 

 

9. Ribs 템플릿 Xcode에 추가

해당 프로젝트내에  /Carthage/Checkouts/RIBs/ios/tooling/install-xcode-template.sh를 실행.

install-xcode-template.sh파일을 터미널로 드래그한 후 엔터 누르면 편함.

 

파일 추가시 하단에 Ribs 템플릿 추가된게 보임

 

 

10. Xcode에 프레임워크 추가

 

- Targets에 Build Phases탭에서 Libraries, and Embedded Content에 + 를 클릭

- Add Files를 클릭

 

- 선택해서 추가

 

 

 

11. 스크립트 추가작업

- Build Phases 에서 + 를 클릭하여 New Run Script Phase를 선택

 

참고 : github.com/Carthage/Carthage#quick-start

 

- /usr/local/bin/carthage copy-frameworks 추가

- 실제경로를 input files에 추가

 

 

12. Ribs import 체크 및 빌드 체크