2016-09-22 3 views
4

저는 현재 생성 한 정적 C 라이브러리를 새로운 Xcode 프로젝트에 연결하려고합니다.Xcode 7에서 정적 C 라이브러리 링크?

1) 이동 에 빌드 페이즈

2) 다음

3)에 "기타"라이브러리를 추가 라이브러리 링크 바이너리를 확장 : 그것을 연결하려면, 나는 다음과 같은 지침을 따랐 문제의 .a 파일을 지정했습니다.

불행하게도,이 프로젝트는 컴파일하고 다음과 같은 오류가 발생하지 않습니다

ld: library not found for -ltxht 

내가 이런 만들 정확히 모르겠어요합니다. 라이브러리는 프로젝트에서 프로젝트 파일로 괜찮아 보입니다. 잘못된 점이 있다는 것을 발견 할 수 없습니다.

위치를 으로 설정해 보았습니다. 파일 관리자에서 절대 경로을 사용했지만 아무 것도 변경하지 않았습니다. 나는 또한 본 적이

어떻게 든 문제를 해결에 도움이되는 정적 라이브러리의 전체 경로를 제공하는 몇 가지 유사한 온라인 게시물 : this SO Post에서

In reaction to your comment on Eduard Wirch' answer: you can also control static linking for this one library only, if you replace -lhdf5 by -l/full/path/to/libhdf5.a

.

그러나이 방법은 확실하지 않습니다. 나는 빌드 설정으로 갔고 옵션 페이지 만 보았지만 이하는 없습니다 또는 을 연결하면 내가 원하는 것을 수행 할 수있는 것처럼 보입니다.

누구나이 정적 C 라이브러리를 올바르게 추가하는 방법을 설명 할 수 있습니까? 다음과 같이 그냥 정보, 도서관의 위치에 프로젝트의 위치는 다음과 같습니다

라이브러리 :/lib/libtxht/libtxht.a 엑스 코드 프로젝트 :/lib/libtxvm/myProject.xcodeproj

답변

4

이 외부 정적 lib 디렉토리 인 경우, 존재하는 경로를 빌드 설정의 Library Search Paths에 추가해야합니다. 전체 경로가 아니라 디렉토리가 들어 있습니다.

+0

감사합니다! 그것은 효과가있다! 그러나 라이브러리 내부의 헤더 파일을 사용할 수 없습니다. 왜 그럴 수 있죠? 나는 그들을 포함 시키려고했지만 Xcode는 나에게 오류를 던진다. 터미널을 통해 아카이브를 C 파일에 연결 한 다음 실행하면 헤더를 포함하여 잘 작동하는 것처럼 보였습니다. Xcode에서 그렇게 할 수없는 것 같습니다. – Micrified

+1

lib 인클루드 파일의 경로를 가지려면'헤더 검색 경로 '를 조정해야합니다. –

+0

@MobileBen. 같은 일을했지만 내 프로젝트에서는 효과가 없습니다. 내 라이브러리는 .a 확장자로 끝나는 PayTabs SDK 라이브러리입니다. –

관련 문제