2010-05-31 5 views
5

재배포하려는 작동중인 Cocoa 프레임 워크를 만들었습니다. 그러나 문제는 Xcode 외부에서 실행되지 않습니다. 나는 어디에 넣을 지 모르므로 나는 포함하지 않은 @executable_path/../Frameworks에 대해 읽었습니다./코코아 프레임 워크 만들기

따라서 DYLD_FRAMEWORK_PATH 변수를 사용하여 Xcode에서 내 응용 프로그램을 실행하지만 Xcode에서만 작동합니다. 내가 직접 실행하려고하면 바로 충돌하고 IMAGE NOT FOUND라고합니다.

나는 @executable_path/../Frameworks이 무엇인지 잘 모르겠지만 어디에 넣어야할지 모르겠다.

누구든지 나를 도와 줄 수 있습니까? :)

감사

다음
+1

프레임 워크가 _running_이라는 것은 무엇을 의미합니까? 프레임 워크에는 대개 직접 실행 코드가 없습니다. 또한 Framework Programming Guide를 읽었습니까? http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPFrameworks/Frameworks.html#//apple_ref/doc/uid/10000183-SW1 어쩌면 그냥 감추어도 답변을 얻을 수 있습니다. – zneak

+0

물론 나는 그것을 읽었습니다. 프레임 워크는 내 앱으로 가져 오지만 시작할 때 충돌합니다. 가이드는'@executable_path /../ Frameworks'를 설정하는 것에 대해서도 이야기하지만, 그것이 어디 있는지 모르겠습니다. – Pripyat

+0

"설치 디렉터리"매개 변수를 프로젝트 설정에서 설정하려고했지만 여전히 실패합니다. 여전히'dyld : Library not loaded :'와'Image not found'가 있습니다. – Pripyat

답변

3

내가 보통 일 관리하는 방법입니다 : 프레임 워크의 Xcode 프로젝트에서

  1. 가 프레임 워크를 추가 @rpath하기 위해 설치 디렉토리를 설정 응용 프로그램의 Xcode 프로젝트. 파일 복사 빌드 단계를 추가하고 대상 팝업에서 프레임 워크를 선택한 다음 프레임 워크가 추가 될 때 프레임 워크가 빌드 될 때 응용 프로그램의 Frameworks 디렉토리로 복사되도록 프레임 워크가 추가되었는지 확인하십시오.

  2. 마지막으로 프로젝트 설정에서 Runpath Search Paths에 @loader_path /../ Frameworks를 추가하십시오.

+0

@executable_path에 만족하지 않는다고 생각합니다. - 실행 로그의 스크린 샷을 여기에 업로드했습니다 : http://web.me.com/david.schiefer/error.tiff – Pripyat

+0

@rpath를 사용하면 필요 없습니다. @executable_path에 대해, 왜이 오류가 표시되는지 잘 모르겠습니다. – sbooth

0

실제로 프레임 워크를 응용 프로그램 번들로 복사 하시겠습니까? 바이너리가 들어있는 MacOS라는 폴더를 찾으십시오. Frameworks라는 동일한 레벨에 다른 폴더가 있어야하며 내부에 프레임 워크가 있어야합니다.

프레임 워크가 없으면 Frameworks 폴더에 프레임 워크를 복사하는 응용 프로그램의 복사 파일 빌드 단계를 만들어야합니다.

+0

"내용보기"를 클릭하면 Frameworks (프레임 워크가 있음), Resources 및 MacOS를 볼 수 있습니다. – Pripyat

+0

그래, 내 프레임 워크가 있지만 그래도 여전히 작동하지 않습니다. – Pripyat

+0

OK, 다음 것은 응용 프로그램이 있어야한다고 생각하는 부분을 찾는 것입니다. 터미널 세션을 열고 MacOS 디렉토리로 가서 바이너리에서'otool -L'을 실행하십시오. – JeremyP

관련 문제