반응형
이번에도 워닝 제거하기 시리즈인데요.
이런 에러를 만났습니다.
ld: warning: method '{methodName}' in category from {file build path}.o conflicts with same method from another category
objective-c에서 카테고리를 통해 method를 확장한 케이스 입니다.
두개의 카테고리에서 동일한 이름을 쓰는 method를 발견할 수 있었습니다.
조금 이상한 것은 다른 클래스명을 가지고 있었는데도 워닝이 뜨고 있는 점 입니다.
알고보니 해당 method는 팩토리 메소드로 사용하고 있었고
카테고리를 구현하는 .m 파일 안에서 중복된 2개의 구현부가 있었습니다.
예를 들어보면 이런식 입니다.
// MyClass+CategoryName.h
@interface MyClass (CategoryName)
- (void)templaeMethodName;
@end
// MyClass+CategoryName.m
@implementation MyClass (CategoryName)
- (void)templaeMethodName {
// something
}
- (void)templaeMethodName {
// something
}
@end
이렇게 구현 하는 method가 2개나 있었던 겁니다... ㄷㄷ;;;
다양한 이유로 이 이슈가 뜨는 것 같은데 또 발견되면 포스팅하겠습니다.
반응형