2017-11-13 1 views
0

외부 라이브러리를 XCode에 정적으로 연결하여 프로그램을 컴파일했습니다. 그러나 동적으로 라이브러리를 링크하는 방법에 오류가 있습니다. 정적 링크를 XCode - C++ 정적 및 동적 라이브러리 연결

, 나는 1. 페이즈를 구축하기 위해 갔다했다, 바이너리를 라이브러리와 연결이 2. 설정을 구축하기 위해 갔다 정적 .A 라이브러리를 선택하고 헤더 파일 디렉토리 3 머리글 검색 경로를 수정했습니다. 라이브러리 검색 경로를 정적 라이브러리 디렉토리로 수정했습니다.

나는 프로그램을 컴파일하고 작동한다. 1. 페이즈를 구축하기 위해 갔다 연결 동적으로

그럼 난 노력하고는, 바이너리를 라이브러리와 연결은 정적 .A 라이브러리를 제거하고 2. 컴파일 시도 (그들은 같은 디렉토리에있는)을 .dylib 라이브러리를 추가 - 하지만 '라이브러리가로드되지 않습니다. @ loader_path/(lib name) .dylib .. 이유 : 이미지를 찾을 수 없습니다'.

경로 중 하나가 빠졌습니까? 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

0

DYLD_LIBRARY_PATH 환경 변수를 추가하여 해결했습니다.

  1. 동적 라이브러리가 정적 라이브러리와 같은 디렉토리에 있지 않은지 확인하십시오. 이로 인해 충돌이 발생합니다. 별도의 디렉토리를 만들고 필요한 모든 동적 라이브러리를 복사했습니다.
  2. 라이브러리를 사용하여 바이너리를 작성하고 필요에 따라 동적 라이브러리를 선택하고
  3. Went to Build 설정을 수정하고 헤더 파일 디렉토리
  4. 라이브러리 검색 경로를 동적 라이브러리 디렉토리로 수정했습니다.

(menu) Product -> Scheme -> Edit Scheme로 환경 변수를 생성했습니다. '환경 변수'에서 'DYLD_LIBRARY_PATH'변수를 생성하고이를 동적 라이브러리 디렉토리로 지정했습니다.

작동 :

관련 문제