문제

저는 숙련된 VS.NET 사용자이고 Xcode 3.1.1을 시작하고 실행하려고 합니다.
내가 달성하려는 것은 다음과 같습니다.

나는 정적 라이브러리("Lib")가 자체 xcodeproj 파일을 갖고 싶습니다.Lib를 사용하여 Lib의 xcodeproj 파일을 참조하여 Lib를 변경하면 앱이 다시 연결되도록 하는 실행 가능한 애플리케이션("앱")을 만들었습니다.이상적으로는 앱의 Xcode 작업공간 내에서 Lib의 소스 파일을 편집할 수 있어서 항상 변경 작업을 수행할 필요가 없습니다.

나는 온라인 도움말을 통해 정적 lib xcodeproj를 내 앱의 프로젝트로 간단히 끌어서 참조를 얻을 수 있다는 것을 알아냈습니다.내 정적 lib xcodeproj가 내 앱 프로젝트에 있으면 이를 앱의 대상으로 드래그하기만 하면 앱이 Lib에 의존한다는 것을 이해합니다.이것이 올바른 길인 것 같지만 아직은 내가 원하는 대로 일이 진행되지 않습니다.

내 질문은 다음과 같습니다.

  1. 단순히 앱이 Lib에 의존한다고 해서 앱이 Lib과 연결되는 것은 아닌 것 같습니다.Lib 폴더의 libLib.a를 앱의 "Link Binary With Libraries" 빌드 단계로 명시적으로 드래그해야 하는 것 같습니다.VS.NET에서는 프로젝트를 솔루션 종속성으로 지정하기만 하면 링크 줄에 추가됩니다.나는 아무것도 놓치고 있지 않은지 확인하고 싶습니다.

  2. Xcode에서 앱을 열고 Lib.xcodeproj를 끌어다 놓으면 거기에 Lib의 소스 파일이 하나도 없습니다."Lib.xcodeproj" 폴더 아래에서만 libLib.a를 얻습니다.VS.NET에서는 바로 Lib의 소스 파일을 편집하고 다시 빌드할 수 있습니다.하지만 Xcode에서 이 접근 방식을 사용하면 Lib.cpp를 변경해도 앱을 다시 빌드할 때 Lib가 다시 빌드되지 않습니다.이상적으로는 Lib.xcodeproj를 App으로 드래그할 때 Lib의 모든 소스 파일과 대상이 표시되도록 하는 것입니다.이 작업을 수행할 수 있는 방법이 있나요?

어떤 답변이라도 미리 감사드립니다!

도움이 되었습니까?

해결책

대상 A를 대상 B(동일한 프로젝트 내에서든 프로젝트 간에든)에 종속시키는 것이 맞습니다. ~ 아니다 타겟 A가 타겟 B에 연결되도록 합니다.이를 명확하게 지정해야 합니다.이는 서로 다른 개념이고 대상 간에 종속성이 있을 수 있기 때문입니다. ~하지 않다 서로 연결하려고 합니다(예: 대상 C에 의해 빌드되고 대상 A에 대한 빌드 프로세스의 일부로 사용되는 명령줄 도구).

또한 프로젝트 A 내에서 프로젝트 B를 참조하면 프로젝트 A 창에서 프로젝트 B의 소스 코드를 볼 수 없다는 것이 맞습니다.Xcode에는 Visual Studio 및 Eclipse와 동일한 "작업 공간" 모델이 없기 때문입니다.위에서 "프로젝트 A를 포함하는 작업 공간"이 있다고 언급했지만 Xcode에는 실제로 그런 것이 없고 창만 있습니다. 대표하는 프로젝트 A.

다른 팁

앱 프로젝트를 엽니다.앱 대상을 마우스 오른쪽 버튼으로 클릭하고 "정보 받기"를 선택하십시오. 그런 다음 "일반 탭"으로 이동하여 "직접 종속성"을 찾으십시오. 직접 종속성을 추가하려면 ( +) (플러스 부호) 버튼을 클릭하십시오.Lib.xcodeproj가 가능성 목록에 나타나야 합니다.해당 목록에서 Lib 대상을 선택합니다.

그러면 App 타겟을 빌드할 때 Lib 프로젝트가 빌드(또는 다시 빌드)되어야 합니다.

(지금 내 게시물을 편집하고 있습니다.나는 질문의 2번 항목에 대해 아무 말도 하지 않았다는 것을 알고 있습니다.사실 아직도 2번을 생각하고 있어요.가능한지 아닌지는 잘 모르겠습니다.)

나는 또한 Xcode 3.1의 초보자이며 귀하가 언급한 문제를 가지고 놀았으며 두 번째 질문과 관련하여 문제가 없음을 발견했습니다.종속성 라이브러리 소스 코드를 편집하는 데 사용하는 응용 프로그램이 무엇이든 기본 프로젝트는 종속성 대상을 다시 빌드합니다.나는 그것을 확인했다 :

  1. 메모장 응용 프로그램을 사용하여 앱이 의존하는 라이브러리의 소스 파일을 편집했습니다.
  2. 의존성 라이브러리 프로젝트 참조를 선택하고 마우스 오른쪽 버튼을 클릭한 후 'Open With Finder'를 선택한 후 원하는 소스 파일을 선택하여 편집했습니다.

모든 것이 잘 작동합니다.

나는 또한 Xcode를 처음 사용하는 사용자입니다.내가 아는 대부분의 내용은 James Bucanek(ISBN 047175479x)의 Xcode 책에서 배웠습니다.Xcode 2.2용으로 쓰여진 오래된 책이지만, 그 내용의 대부분이 오늘날에도 여전히 나에게 적용된다는 것을 알았고, 나는 현재 Xcode 3.1을 사용하고 있습니다.

관심이 있다면 아마도 저렴한 중고 사본을 찾을 수 있을 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top