2014-04-11 3 views
1

동적 인 라이브러리가있는 프로젝트와이를 연결하는 실행 파일이 있습니다. 나는 성공적 엑스 코드와 함께 시작할 수 있지만 명령 줄에서 실행하려고 할 때, dyld 라이브러리가 설치 경로에없는 불평 :Xcode에서 내 프로그램을 실행할 수는 있지만 수동으로 실행할 수는 없습니다.

$ /Users/USER/Library/Developer/Xcode/DerivedData/PROJECT/Build/Products/Debug/EXECUTABLE 
dyld: Library not loaded: /usr/local/lib/libMyLib.dylib 
    Referenced from: /Users/USER/Library/Developer/Xcode/DerivedData/PROJECT/Build/Products/Debug/EXECUTABLE 
    Reason: image not found 
Trace/BPT trap: 5 

이 문제는 아주 분명하다 : 라이브러리가 아니다 보급 된 설치 경로. 그러나, 저는 거기에 그것을 배포하고 싶지 않습니다, 게다가, Xcode는 여전히 내 프로그램을 시작합니다.

/usr/local/lib에 라이브러리를 설치하지 않고 프로그램을 어떻게 실행할 수 있습니까?

+0

/Library/Frameworks/로를 설치, 프레임 워크에 대해이 작업을 수행 할 수

참고하니 정말 필요한 설치 동적 라이브러리? 라이브러리 소스 코드에 액세스 할 수 있으면 정적 인 프로그램을 사용하는 것이 더 쉬울 수도 있습니다 ... – Macmade

+0

@Macmade, 프로그램과 여러 플러그인간에 공유되는 핵심 구성 요소가 포함되어 있으므로 동적 라이브러리를 사용하고 있습니다. 대신 프레임 워크를 만들 수는 있지만 정적으로 만들면 문제를 일으킬 수 있습니다. – zneak

답변

0

dylib를 사용하는 경우 적절한 위치에 설치해야합니다. @executable_path를 사용하여 응용 프로그램에서 그것을 포장 수, 도움이 될 수있는 프레임 워크를 사용

...
하지만, 물론, 당신은 다른 응용 프로그램에서 공유 할 수 없습니다.

기본적으로 동적 라이브러리를 설치하려면 Xcode에 알려야합니다.
이 설정은 배포 섹션의 빌드 설정에서 수행 할 수 있습니다.

주로 배포 위치, 설치 디렉토리, 건너 뛰기는, 등등 ... 당신은 또한

+0

Xcode가 올바른 위치에 lib가 없으면 어떻게 동작합니까? – zneak

+0

Xcode가 라이브러리와 함께 기본 실행 파일을 링크 로그보기 (왼쪽 사이드 바의 마지막 아이콘)에 연결하는 방식을 볼 수 있습니다 ... 기본적으로 라이브러리 대신 임시 빌드 디렉토리에서 라이브러리의 전체 경로를 사용합니다 이름을 사용하면 릴리스 빌드에서 기대할 수 있습니다. – Macmade

+0

그런 다음 빌드 디렉토리에서 라이브러리를 찾도록 설정 한 경우 왜 * * 빌드를 실행할 수 없습니까? – zneak

관련 문제