시뮬레이터와 ARM 프로세서 모두에 대한 정적 라이브러리를 빌드 한 다음이 둘을 범용 라이브러리로 결합해야하는 iPhone SDK 프로젝트가 있습니다.iPhone SDK 4의 다중 플랫폼 타겟팅
이전까지 저는 iPhone SDK 3+ 이상을 사용하여 각각 하나의 시뮬레이터와 하나의 ARM에 대해 별도의 타겟을 생성 한 다음 쉘 스크립트를 사용하여 이들을 결합하는 세 번째 타겟을 만들어이를 수행했습니다. 구성 대상 각각에 대한 배포 대상/빌드 설정은 각각의 아키텍처 등으로 설정됩니다. 또한 iPhone SDK 3+를 사용하면 기본 XCode의 왼쪽 위 모서리에있는 드롭 다운 메뉴에서 "Base SDK"를 선택할 수있었습니다 창문.
모든 유명했다 - 나는 지금 4
을 SDK로 업그레이드, 왼쪽 상단의 드롭 다운 메뉴에는 "기본 SDK"목록이 없습니다. 또한 컴파일러는 대상 배포 설정을 완전히 무시하는 것으로 보입니다. 대상 중 하나가 "iPhone 장치"로 설정되고 다른 대상이 "iPhone 시뮬레이터"로 설정된 경우에도 대상은 드롭 다운 메뉴에 설정된 것과 동일하게 구성됩니다. SDK 3 모든 것이 완벽하게 작동에, 다시 한번
:
내가 충분히 명확하지 한 경우, 여기에
공격
잘못된 전술 우리 모두가 알 메뉴와 사랑입니다. 이제 SDK 4에서 "장치"로 설정하면 ARM 용으로 빌드 된 두 개의 라이브러리가 생깁니다. 시뮬레이터로 설정하면 시뮬레이터 용으로 빌드 된 두 개의 라이브러리가 생깁니다.
누구나이 불홍기에 대한 해결책을 알고 있습니까?
감사합니다.
업데이트 : "xcodebuild"명령 줄 도구가 여전히 작동합니다. 즉, 각 대상의 배포 매개 변수에 따라 올바른 아키텍처를 빌드합니다.
따라서, 건설 엑스 코드의 GUI를 사용하기보다는, 정말 같은 xcodebuild 호출하는 쉘 스크립트 사용할 수 있습니다
xcodebuild -target device-target -configuration Debug xcodebuild -target sim-target -configuration Debug
하는 것은 여전히 진정한 해결책을 찾기 위해 좋은 것, 그러나 이것은을 얻을 것이다 이제 끝내야 할 직업.
매우 혼란 스럽습니다. 약간의 통찰력을 위해 이것을 읽으십시오 - http://stackoverflow.com/questions/3092386/base-sdk-3-0-to-sdk-4-0 – Jason