빠른 대답은 : 예, 할 수 있습니다!
" 방법 "부분에 들어가기 전에 여기에 패치 / 해킹 / 수정에 대한 몇 가지 참고 사항이 있습니다. 처음부터 주요 목표는 다음과 같습니다.
모든 수정 사항을 최소한으로 유지하십시오.
Xcode 설정을 가능한 한 원본으로 유지하고 싶습니다.
반드시 파일을 패치하거나 수정하지 않도록하십시오.
우리는 모든 파일이 그대로 유지되고 원본 콘텐츠를 유지하기를 원합니다.
꼭 필요한 경우가 아니라면 파일을 이동하거나 복사하지 마십시오.
그 모든 목표를 지킬 수있었습니다. 거의 모든 것이 심볼릭 링크를 생성함으로써 이루어집니다. 기존 심볼릭 링크는 하나만 교체해야했으며 만일을 대비하여 교체 전에 백업하겠습니다.
터미널 작업에 대한 전문가가 아닌 경우 오타를 방지하기 위해 내 답장의 모든 터미널 명령을 터미널에 복사 / 붙여 넣기하는 것이 좋습니다. 공백, 인용 및 특히 대소 문자도 중요 할 수 있습니다. 한 줄씩 복사 / 붙여 넣기를하고, 한 번에 한 줄 이하로 붙여넣고, 붙여 넣은 각 줄 후에 Return 키를 눌러 명령을 실행합니다. 어떤 작업에서 암호를 입력하라는 메시지가 표시되면 이것은 현재 로그인 한 관리자 사용자의 암호가됩니다 (입력하는 동안 키 입력이 표시되지 않습니다. 이것은 정상입니다. 걱정하지 마십시오. 계속 암호를 입력하고 return 키를 누르십시오. -오타가있는 경우 시도하고 다시 메시지를받습니다).
전제 조건
시작하기 전에 다음 조건이 참인지 확인하십시오.
- 관리자로 로그인했습니다.
- Terminal.app (응용 프로그램 / 유틸리티)를 시작했고 터미널 창이 열립니다.
- 사용 가능한 Xcode3 (예 : 3.2.5) 및 Xcode4 디스크 이미지 (DMG) 또는 설치 프로그램의 복사본이 있습니다.
- 이미 Xcode 버전이 설치되어있는 경우 먼저 제거하는 것이 좋습니다. 그러면 새롭고 깨끗한 설정으로 시작할 수 있습니다. Xcode를 제거해도 기본 설정, 색 구성표 또는 키 바인딩 사용자 정의가 제거되지 않습니다. 이상적으로는 현재 설치된 Xcode 버전 (3도 4도 아님)이없는 시스템으로 시작하는 것이 좋습니다.
1 단계 : Xcode3 설치
중요 : Xcode3의 " System Tools "또는 " Unix Development "패키지를 설치하지 마십시오 .
" Mac OS X 10.4 SDK "및 / 또는 " 문서 " 설치 여부는 귀하에게 달려 있습니다. iOS SDK가있는 Xcode3 인 경우 설치 여부도 사용자에게 달려 있습니다.
설치할 대상 폴더를 자유롭게 선택할 수 있습니다. 이 가이드에서는 " / Xcode3 "을 선택했지만 다른 것을 선택 해도 됩니다. 그에 따라 모든 터미널 명령을 변경하십시오.
여기에 제공된 단계의 순서는 일반적으로 중요하지 않지만 1 단계와 2 단계를 바꾸지 않는 것이 좋습니다. Xcode는 항상 선택한 대상 폴더 외부에 두 개의 파일을 설치하고 저를 믿습니다. 디스크에있는 해당 파일의 Xcode4 버전. Xcode4 이전에 Xcode3를 설치하면 필요한 경우 Xcode4가 해당 파일을 덮어 쓰도록 할 수 있습니다. 한 번 1 단계와 2 단계를 바꿨고 결국 잘못된 주문과 관련된 이상한 문제가있었습니다 (확실히 말할 수는 없지만 올바른 순서로 다시 설치하면 문제가 사라졌습니다).
2 단계 : Xcode4 설치
원하는 패킷을 선택하십시오. " 시스템 도구 "를 설치하는 것이 좋지만 반드시 필요한 것은 아닙니다 (대부분의 사람들은 조만간 해당 기능을 놓칠 것입니다).
다시 말하지만 원하는 대상 폴더를 자유롭게 선택하십시오. 이 가이드에서는 일반 대상 폴더 " / Developer "를 선택했습니다. 다른 폴더 를 사용하는 경우 그에 따라 모든 터미널 명령을 변경하십시오.
3 단계 : 10.4 / 10.5 SDK 지원 복원
터미널 창으로 전환하고 다음 명령을 실행하십시오.
cd / 개발자 / SDK
sudo ln -s /Xcode3/SDKs/MacOSX10.4u.sdk.
sudo ln -s /Xcode3/SDKs/MacOSX10.5.sdk.
물론 1 단계에서 SDK 10.4를 설치 한 경우에만 10.4u에 대한 명령을 실행하십시오.
이는 SDK 10.5 (및 10.4)를 Xcode4의 선택 목록으로 다시 가져 오기에 충분합니다. 원한다면 한번 시도해보세요. Xcode4를 실행하고 프로젝트를 열고 선택한 SDK를 변경해보십시오. 쉬웠 죠? 다음 단계로 진행하기 전에 Xcode4 (창뿐만 아니라 응용 프로그램)를 다시 닫아야합니다.
4 단계 : GCC 4.0 지원 복원
MacOS 10.4 SDK를 설치하지 않았거나 사용할 계획이없는 경우이 단계를 건너 뛰고 5 단계로 진행할 수 있습니다.
SDK 10.4를 사용하려면 GCC 4.0을 사용해야합니다. GCC 4.2는 작동하지 않습니다. Apple은 GCC 4.2가 SDK 10.4와 호환되지 않는다고 주장합니다. 음, 저에게 묻는다면 이것은 사기입니다. 나는 이미이 제한을 두 번 이상 덮어 썼고 그로 인해 가장 작은 문제는 없었습니다. Xcode에서 GCC 4.2를 사용할 수 있도록 SDK 10.4를 수정하는 것은 쉬울 것입니다. 그러나 제 목표는 모든 파일 수정을 피하는 것이었기 때문에 GCC 4.0 지원을 Xcode에 다시 추가하기 만하면됩니다. 일부 프로젝트는 실제로 GCC 4.0에 의존합니다 (예 : 유효한 인라인 어셈블리 코드가 오류없이 컴파일되는 것을 방지하는 몇 가지 버그가 GCC 4.2에 있지만 동일한 코드가 GCC 4.0 및 GCC 4.4에서 완벽하게 컴파일됩니다).
터미널로 돌아 가기 :
cd / 개발자 / usr / bin
sudo ln -s /Xcode3/usr/bin/*4.0*.
cd / 개발자 / usr / libexec / gcc / powerpc-apple-darwin10
sudo ln -s /Xcode3/usr/libexec/gcc/powerpc-apple-darwin10/4.0.1.
지금 우리는 GCC 4.0이 여전히 Xcode4에서 선택할 수 없다는 사실을 제외하고는 전체 GCC 4.0 지원을 복원했습니다. Xcode4에는 더 이상 GCC 4.0 컴파일러 플러그인이 없기 때문입니다. 다행히 Xcode3 플러그인은 Xcode4에서도 작동하며 위치 만 근본적으로 변경되었습니다. 애플은 이제 이러한 플러그인을 번들 안에 숨겨 놓고 플러그인 만 작동하는 것처럼 보이며 이전 위치에 배치해도 효과가없는 것 같습니다.
cd / Developer / Library / Xcode / PrivatePlugIns
cd Xcode3Core.ideplugin / Contents / SharedSupport / Developer / Library / Xcode / Plug-ins
sudo ln -s "/ Xcode3 / Library / Xcode / Plug-ins / GCC 4.0.xcplugin".
이제 Xcode4를 다시 시작하고 프로젝트를 열고 컴파일러를 선택하십시오. 목록에 GCC 4.0이 다시 있어야합니다. 이제 실제로 이미 SDK 10.4 또는 10.5, GCC 4.0을 선택할 수 있으며 PPC 바이너리를 빌드하는 데 문제가 없어야합니다. " 아키텍처 "빌드 설정에 대해 " 기타 ... "를 선택 하고 " ppc "를 수동으로 입력 한 다음 " 유효한 아키텍처 "를 " ppc " 도 포함하도록 변경하십시오 . GCC 4.2 및 SDK 10.5를 사용하여 PPC 바이너리를 빌드하려는 시도가 여전히 실패한다는 점을 제외하면 거의 완료되었습니다.
5 단계 : GCC 4.2에 대한 PPC 지원 복원
Apple은 Xcode4에서 Intel 플랫폼 만 지원하므로 모든 GCC 4.2 도구가 PPC 지원으로 구축 된 것은 아닙니다. PPC를 지원하지 않는 한 가지 중요한 도구가 있습니다.이 도구는 " as " 로 명명 되며 GNU 어셈블러입니다. GCC 4.2로 ppc / ppc64 바이너리를 컴파일하려면 ppc / ppc64를 지원 하는 " as "버전 을 사용해야합니다 . 이것은 심볼릭 링크로 교체하기 전에 먼저 옆으로 이동 (백업 사본 만들기)해야하는 유일한 파일 (실제로 심볼릭 링크이기도합니다)입니다.
cd /Developer/usr/libexec/gcc/powerpc-apple-darwin10/4.2.1
sudo mv as.bak
sudo ln -s / Xcode3 / usr / bin / as.
6 단계 : 6 단계는 없습니다
그게 다야. 그것이 얼마나 쉬웠는지 고려할 때, 애플이 SDK 10.4 / 10.5 또는 ppc / ppc64 또는 GCC 4.0 지원이 필요했기 때문에 확실히 중단하지 않았 음을 상상할 수 있습니다.
이 설정이 저와 마찬가지로 여러분에게도 잘 작동하기를 바랍니다. 여기저기서 검색 경로를 변경하는 것을 제외하고는 큰 변경없이 Xcode4에서 모든 이전 프로젝트를 컴파일 할 수있었습니다.
추신 :
제가 여기서 제 질문에 답하는 것이 이상하게 보일 수 있지만,이 문제를 혼자서 해결하는 방법을 알아 냈기 때문에 제 지식을 커뮤니티와 공유하고 싶습니다. 모든 MacOS 개발자. 이 질문은 여러 곳에서 여러 번 제기되었으며 지금까지 비슷한 수정을 제안하는 사람을 본 적이 없습니다. 부를 공유하고 지식을 퍼뜨리는 등 내가 의미하는 바를 알 수 있습니다.
여전히 문제 / 질문이있는 경우 :
이 주제에 대한 추가 질문이 있거나 이전 프로젝트를 올바르게 빌드하는 데 여전히 문제가있는 경우 Stack Overflow가 설계된 용도를 수행하십시오.이 페이지의 오른쪽 상단에있는 "질문하기"를 클릭하고 새 질문을 생성하십시오. . 이렇게하면 문제가이 해킹과 직접적으로 (간접적이지 않을 수도 있음) 관련되지 않을 수 있으므로 전체 커뮤니티가 이러한 문제를 해결하는 데 도움을 줄 수 있습니다.
질문의 맨 처음에이 해킹을 적용했다는 사실을 언급하는 것이 좋습니다. 이 해킹에 대해 들어 본 적이없는 사람들이 쉽게 찾을 수 있도록이 질문에 직접 연결하고 싶을 수도 있습니다. 그렇지 않으면 공식적으로 이들 중 어느 것도 지원하지 않는 Xcode4와 함께 SDK 10.4 / 10.5, PPC 또는 GCC 4.0을 언급 할 때 대부분의 사람들이 다소 혼란 스러울 것입니다. 이 해킹을 언급하는 것을 잊으면 괜찮은 답변 대신 어리석은 댓글을받을 수 있습니다.
여기에 답변이나 의견으로 질문이나 문제를 게시하지 마십시오. 답글로 게시하는 것은 답글이 아니며 사람들이 댓글을 사용하지 않고 답장을 보낼 수있는 방법이 없기 때문에 의미가 없으며 댓글은 귀하의 질문에 대한 적절한 답변이나 적절한 솔루션을 제공 할 충분한 공간을 제공하지 못할 수 있습니다. 문제. 댓글로 게시하는 것은 공간이 매우 적고 댓글에 트리와 같은 계층 구조가 없기 때문에 답글 댓글을 추적하는 것이 어려울 것입니다 (더 나아가 괜찮은 답변 / 솔루션을위한 공간을 거의 제공하지 않음). 감사합니다.
물론 원래 질문에 대한 더 나은 답변뿐만 아니라 다른 종류의 의견은 언제나 환영합니다 ;-)