duplicate symbol 2

Archive를 -l 로 합치기

이리저리 찾다보면, 이 옵션은 디버깅용으로 빌드시 다른 플랫폼들이 빌드되면, 시간이 걸리는 것을 줄이기 위해서 현재 테스트할 플랫폼에 맞는 것만 빌드하도록 하는 것이라고 한다. 뭐 괜찮은 생각인것 같은데, Archive 를 만드는데 문제가 발생했다. 이상하게 해당 Archive를 이용하면 duplicate symbol 발생으로 링킹에 실패하는 문제가 발생했다. 그것도 기본 설정으로는 아무 문제가 없었는데, -all_load 옵션으로 Archive에 내장된 모든 심볼을 로딩하게 하면, 문제가 발생했다. nm 유틸리티를 이용하여 symbol목록을 확인 한 결과 정말로 모든 symbol이 두 벌씩 들어가는 것을 확인 했다. 프로젝트 옵션의 주요 값으로는 base sdk iPhoneOS 4.0 SDK archi..

iphone duplicate symbol

후.. 외부 모듈 둘을 이용해야하는 상황 근데 그 외부 모듈 둘이 기반을 동일한 녀석을 사용하고 있다. 해서 동일한 심돌이 두 모듈에 있는데, 어쩌지 일단 gcc 옵션을 시도!! -multiply_defined $ > /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/powerpc-apple-darwin9-gcc-4.2.1 --help -multiply_defined powerpc-apple-darwin9-gcc-4.2.1: argument to '-Zmultiply_defined' is missing $ > 아주 이 옵션을 빼고 빌드했나보네.. 그럼 해결 방안은? 뭐 찾아봐야지..

카테고리 없음 2010.03.25