다른 프로젝트 (B
)를 참조하는 XCode 프로젝트 (A
)가 있습니다. 기본적으로 (내가 이해하는 한) XCode는 A
의 대상 (예 : "디버그")의 구성과 일치하는 B
종속성에 대한 구성을 암시 적으로 빌드합니다. 하지만, "Debug"로 빌드하려면 A
을, "Release"로 빌드하려면 B
을 어떻게 만들겠습니까? Xcode에서이를 어떻게 지정해야합니까?Xcode에서 하위 프로젝트 구성 지정
답변
쉽게 접근 할 수있는 방법을 모르지만 "스크립트 실행"빌드 단계의 종속성에 대해 xcodebuild를 직접 호출하여 무차별 대입 할 수 있습니다.
나는 단지 예제 일 뿐이라는 것을 알고 있지만, 실제 목표가 하위 프로젝트가 릴리스 (기호 없음) 빌드이면 하위 프로젝트를 라이브러리로 빌드하거나 더 나은 환경을 제공 할 수 있습니다. 프레임 워크를 만들고 결과 바이너리를 버전 제어 시스템으로 확인합니다. 드물게 변경되는 시스템 조각이 있고 디버그 심볼을 원하지 않을 때마다 정적 라이브러리로 빌드하고 체크인합니다. 종종 다른 곳으로 코드를 이동합니다 (코드가 어디에 있고 어떻게 빌드되었는지를 나타내는 .a가있는 README 파일). 이렇게하면 빌드 및 체크 아웃에 드는 시간을 절약 할 수 있으며 내 경험이 많은 대형 프로젝트의 경우 매우 중요합니다.
예, 이것은 자연스럽게 Xcode에서 지원되지 않습니다. 대상을 빌드하면 자체 및 모든 종속 대상의 구성 하나가 작성됩니다.
rob에서 설명한 해결 방법은 단일 실행 스크립트 빌드 단계로 구성되는 Aggregate Target 유형의 종속 대상을 갖는 것입니다.이 대상은 xcodebuild -configuration Release (또는 무엇이든)을 호출하기 만합니다.
프로젝트의 구성이 발견되지 않으면 Xcode는 Release
구성을 폴백 (또는 목록의 첫 번째 구성 일 수도 있음)으로 빌드합니다.
그럼 당신은이 팁을 사용하여 링크를 "강제"할 수 있습니다 Xcode custom build configuration causes "library/file not found" for static libraries
예, 유용한 팁 - 감사합니다! – fbrereto