2010-08-05 8 views
0

내 응용 프로그램을 log4cocoa 프레임 워크에 포함하는 데 어려움을 겪고 있습니다. 문제가 발생하기 전에 응용 프로그램에 프레임 워크를 포함 시키지만이 문제를 해결할 수는 없습니다. 모든log4cocoa에 앱을 퍼가려면 어떻게해야하나요?

먼저,이 내 시스템 밖으로 :

dyld: Library not loaded: @loader_path/Frameworks/Log4Cocoa.framework/Versions/A/Log4Cocoa 
    Referenced from: /Users/leandro/Documents/Projects/MLoggerApplication/build/Debug/MLoggerApplication.app/Contents/MacOS/MLoggerApplication 
    Reason: image not found 

글쎄, 나는 파일을 복사 단계를 포함하는 프레임 워크 작업 벌금을 얻기 위해 필요한 모든 조치를 할 생각에 빌드 옵션을 통해 설치 디렉토리를 변경 @executable_path /../ Frameworks.

귀하의 도움을받을만큼 명확한 문제를 희망합니다. 미리 감사드립니다.

답변

0

프레임 워크가 대상에 복사되지 않는 것처럼 보입니다. 프레임 워크가 시스템의 일부가 아닌 경우 (즉, 앱과 함께 배포해야하는 경우) 실행 파일을 프레임 워크와 링크 할뿐만 아니라 앱의 ./Frameworks 폴더에 복사해야합니다.

이렇게하려면 파일 복사 빌드 단계를 추가하고 빌드 단계의 대상으로 "프레임 워크"를 선택한 다음 방금 만든 Xcode 프로젝트의 프레임 워크 폴더에서 프레임 워크를 끌어옵니다. 프레임 워크에 대한 파일 복사 빌드 단계가 이미있는 경우 새 프레임 워크를 만드는 대신 프레임 워크를 사용하십시오.

+0

안녕하세요, Joshua.First of All, 답변 해 주셔서 감사합니다. 질문. 프레임 워크의 파일 복사 빌드 단계가 이미 있습니다. "새 프레임을 만드는 대신 사용하십시오."라는 의미를 이해하지 못했습니다. 나는 새 것을 만들고 있습니까? – Leandro

+0

필자는 파일 복사 (Copy Files) 빌드 단계가 Frameworks * 용으로 존재할 경우 해당 파일을 사용할 수 있음을 의미합니다. 리소스를위한 리소스가 있지만 Frameworks도 필요합니다. 그런 다음 해당 프레임 워크를 해당 빌드 단계로 끌어 와서 Xcode가 빌드 될 때 대상의 ./Frameworks 폴더에 복사하도록 지시해야합니다. –

0

첫째, Joshua Nozzi는 프레임 워크로 앱을 삽입하는 방법에 대해 완전히 옳습니다.

하지만 약간 다른 log4cocoa는 http://sourceforge.net/projects/log4cocoa/에서 다운로드 할 수있는 opensource 코드이기 때문에 실현할 수 있습니다.

프레임 워크는 "파일 복사 빌드 단계"를 추가하지만 "프레임 워크"대신 "제품 디렉토리"를 빌드 단계의 대상으로 선택한 다음 프레임 워크를 "파일 복사 빌드 단계"로 끌어서 사용할 수 있습니다. 설치 디렉토리 .IT가 기본값으로하고있다 :. "/ 프레임 워크 이 변수가 log4cocoa 마우스 오른쪽 버튼으로 클릭하여 액세스 할 수 있습니다 (첫 번째 항목에서

이 사이의 차이, 그리고 다른 프레임 워크는이 빌드 변수에 의존 "정보 얻기"를 선택하고 마지막으로 "빌드"를 선택하십시오.

"일반"프레임 워크로 사용하려면 "설치 디렉토리"값을 "@executable_path /../ Frameworks"로 편집 한 후 다시 빌드하십시오. "또는 프레임 워크를 포함하려는 경우"@loader_path /../ Frameworks "를 선호합니다.

관련 문제