2011-07-26 7 views
4

사용자 지정 빌드 시스템이있는 기존 프로젝트에서 Xcode를 사용하려고합니다. 여기에는 몇 가지 플랫폼 목표가 있으며,이 중 하나를 지정하고 쉽게 빌드 할 수 있기를 바랍니다. Xcode가 수행해야하는 모든 작업은 make build-platform DEBUG=1 또는 유사한 작업입니다.Xcode 4 사용자 지정 대상 추가

나는 유일한 옵션 이었기 때문에 Mac OS X 카테고리 아래에 외부 빌드 시스템 프로젝트를 만들었습니다. 내 유일한 예측 가능한 문제는 대상 목록입니다. 내가 지금 여기에서 보는 모든입니다

  • 나의 Mac으로 64 비트
  • 나의 Mac으로 32 비트

나는 이것들을 변경하는 생각,하지만 아무 소용에 있습니다 찾아 봤는데. 다른 플랫폼 목록이 필요합니다. 이것을 어떻게 할 수 있으며 대상을 기반으로 빌드 설정을 사용자 정의하는 올바른 방법은 무엇입니까?

(참고 : 각 플랫폼의 구성표로이 작업을 수행 할 수도 있지만 대상과 함께 수행하는 것이 좋습니다. 어느 쪽이든 여전히 활성 설정을 기반으로 변경하려는 대상을 얻는 방법을 알아야합니다.)

답변

1

Xcode 4의 외부 Makefile 프로젝트에서 32 비트 만 사용해야합니다. "My Mac 64-bit"항목을 제거하는 트릭은 아키텍처 값 (ARCH)을 "i386"으로 설정하는 것이 었습니다. 정보 탭에서

build settings

나는 메이크 옵션과 목표를 설정하고 있습니다 :

enter image description here

이러한 변화는 엑스 코드의 메뉴 항목에 대한 정말 유일한 화장품입니다 - 내 빌드 메이크까지로의 올바른 아키텍처를 구축하십시오. 나는 "패스 빌드 설정 ..."을 선택하지 않았으므로 ARCH 설정을 무시하고 그 나머지는 무시합니다.

enter image description here

나는 I386 및 x86-64에 필요하지 않습니다,하지만 그랬다면 나는 유니버설 바이너리를 구축하는 메이크 파일에 규칙을 추가해야합니다.

Xcode 4의 외부 메이크 파일 프로젝트 지원은 올바른 대상 유형을 표시하기 위해 Xcode를 사용하는 데 조금 비판적이지만 작동하는 것처럼 보입니다. 기본적으로 다른 대상을 추가 할 때 자동으로 구성표가 생성됩니다. 당신은 당신이 예상했던 것보다 더 많은 계획으로 끝날 수도 있고, 계획과 그 목표 사이에 잘못 매치 될 수도 있습니다. 내 목표와 계획을 스위트 룸으로 바꿉니다.

희망이 도움이됩니다.

0

플랫폼을 별도로 빌드하려면 개별 구성을 만들어야합니다. 그렇지 않으면 XCode 빌드 단계에서 구성에 정의한 모든 정의 된 아키텍처를 단일 바이너리 (예 : i386 + x86_64)로 빌드합니다. 빌드가 Xcode의 IDE 또는 xcodebuild 명령 줄에서 실행되는지 여부는 사실입니다. 외부 빌드 시스템을 가지고 있기 때문에 후자를 사용하고 있다고 가정합니다.