본문 바로가기

프로그래밍/iOS

[iOS]Other Linker flag

라이브러리 로드 시 사용하는 flag들이 몇가지 있는데

각 flag를 왜 쓰는지 기술


각 flag들은 컴파일 타임에 링크하는 과정에 대한 설정


-ObjC

ObjectiveC 클래스나 카테고리로 정의된 객체 파일들을 모두 적재

설정을 안할 경우 카테고리로 작업한 객체들은 읽지 못한다.


-all_load

linker가 모든 archive로 부터 object file을 로드(사용과는 상관 없음)

Objective-C가 아닌 오브젝트들도 다 링크한다.

따라서 사용하지 않는 변수들까지 다 들고 와서 duplicate 이슈가 나는 경우가 있다


-force_load

-force_load is available in Xcode 3.2 and later. It allows finer grain control of archive loading. Each -force_load option must be followed by a path to an archive, and every object file in that archive will be loaded.

 XCode3.2이상에서 사용가능하고

archive 로딩 시 fine-grain control(modulized, devided into smaller pieces)을 제공.

archive 경로를 따르고 그 안의 모든 object 파일이 로드된다.