728x90
정적 라이브러리(Static Library)는 컴파일 시에 애플리케이션 코드에 직접 포함되는 코드 모음입니다. 이것이 동적 라이브러리(Dynamic Library)와 어떻게 다른지 설명해드리겠습니다:
정적 라이브러리 (Static Library):
- 컴파일 시점에 앱 바이너리에 완전히 통합됩니다
- iOS에서는 .a 파일 확장자를 가집니다
- 앱 바이너리 크기가 커집니다
- 앱 실행 시 별도 로딩 과정이 필요 없어 시작 속도가 빠릅니다
- 여러 앱에서 같은 라이브러리를 사용해도 각 앱마다 복사본이 존재합니다
동적 라이브러리/프레임워크 (Dynamic Library/Framework):
- 실행 시점에 로드됩니다
- iOS에서는 .dylib 또는 .framework로 구현됩니다
- 앱 바이너리 크기가 작아집니다
- 여러 앱이 메모리에 로드된 하나의 라이브러리를 공유할 수 있습니다
- 런타임에 로드되므로 앱 시작 시간이 약간 길어질 수 있습니다
현재 문제의 맥락:
- use_frameworks!는 CocoaPods에게 동적 프레임워크 방식으로 의존성을 관리하라고 지시합니다
- 그러나 Flutter는 정적 라이브러리로 빌드되고 있습니다
- 이 충돌로 인해 'Flutter-ObjC' 프레임워크를 찾지 못하는 오류가 발생합니다
이 문제를 해결하려면 pre_install 블록을 통해 Flutter 관련 모듈의 빌드 타입을 명시적으로 정적 라이브러리로 지정해야 합니다. 이렇게 하면 Flutter의 정적 라이브러리 특성과 use_frameworks! 설정 간의 충돌을 해결할 수 있습니다.
728x90
'코딩 > 비쨔' 카테고리의 다른 글
헤더추가- 앱에서 왔는지 웹에서 왔는지 (0) | 2025.02.25 |
---|---|
회사 깃 이전하기 (0) | 2025.02.19 |
코코아팟, 모듈의 개념 (0) | 2025.02.19 |
파이어베이스 개발 운영 따로 하는 이유 (0) | 2025.02.18 |
스플래쉬 안드로이드 11 이하에서는 안되던 이슈 (2) | 2025.02.06 |