-ObjC 링커 플래그는 무엇을합니까?


136

링커 플래그를 사용하거나 사용하지 않고 작동하는 앱이 있습니다. 그러나 링커 플래그가 없으면 뷰에 데이터를 추가 할 때 매우 다른 동작이 발생합니다.


1
벤 자르 즈, 당신 은 링커 플래그없이 다른 행동 을 얻을 ... 그게 무슨 뜻이야 ?? 어떻게 다른가요?
Adil Hussain

답변:


158

이 플래그는 링커가 라이브러리에서 Objective-C 클래스 또는 카테고리를 정의하는 모든 오브젝트 파일을로드하게합니다. 이 옵션은 일반적으로 응용 프로그램에로드 된 추가 객체 코드로 인해 더 큰 실행 파일을 생성하지만 기존 클래스의 범주를 포함하는 효과적인 Objective-C 정적 라이브러리를 성공적으로 만들 수 있습니다.

기술 Q & A에서


2
큰! 감사합니다. 우리가 컴파일러로 GCC 4.2를 사용하고 있기 때문입니까? LLVM GCC 4.2 또는 LLVM Compiler 2.0을 사용하면 문제가 해결됩니까? 아니면 혼합해서는 안되는 것들을 섞고 있습니까?
bsarrazin

나는 두 컴파일러에서 동작이 같다고 생각한다. (다른 링커가 2 개 있는지는 모르겠다) ...
sergio

4
이것은 -ObjC라이브러리 / SDK 이외의 다른 어떤 것도 필요하지 않다는 것을 의미합니까 ? 즉, 실제 앱 대상에서 사용할 필요가 없습니까?
Robert

2
아니, 당신은 그것에 카테고리 또는 임베디드 프레임 워크가있는 라이브러리를 구현하는 모든 프로젝트에 -ObjC을 필요로이 수단
arc4randall

그냥 어려운 방법을 찾았습니다!
Alexandre G
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.