2012-05-14 3 views
3

"(STL C++ 라이브러리"템플릿을 사용하여) XCode에서 새 프로젝트를 만들고 콘솔에 인쇄하는 작은 테스트 함수 void hello();을 만들었습니다.C++ xcode 프로젝트에서 동적 공유 라이브러리를 사용하려면 어떻게해야합니까?

잘 컴파일되고 dylib 파일을 내보낼 수 있습니다.

내가 알 수없는 것은이 파일에 링크 된 프로젝트를 만드는 방법이며 hello() 메서드를 호출 할 수 있습니다.

모든 조언을 주시면 감사하겠습니다.

Alex.

답변

3

응용 프로그램 프로젝트와 같은 다른 Xcode 프로젝트를 만듭니다. 예제에서 C++를 사용하는 명령 줄 도구 프로젝트를 만들 수 있습니다.

프로젝트를 생성 한 후 dylib를 대상 라이브러리의 Link Binary with Libraries 빌드 단계에 추가하십시오. Xcode 4에서는 프로젝트 탐색기에서 프로젝트를 선택하여 프로젝트 편집기를 엽니 다. 프로젝트 편집기의 왼쪽에있는 대상 목록에서 대상을 선택하십시오. 편집기 맨 위에있는 단계 작성 단추를 클릭하십시오. 라이브러리로 바이너리 링크 빌드 단계 옆의 펼침 삼각형을 클릭하십시오. 라이브러리를 추가하려면 + 버튼을 클릭하십시오.

프로젝트에 dylib 추가를 완료하면 라이브러리에 헤더 파일을 코드에 포함하면 hello() 함수를 호출 할 수 있습니다. 라이브러리를 사용하려면 라이브러리 검색 경로 빌드 설정에 라이브러리에 대한 검색 경로를 추가해야 할 수도 있습니다.

+0

감사합니다. 나는 문제를 해결할 수 있었다. (실제로 같은 프로젝트에서 편의를 위해 새로운 목표를 세웠다.) 그러나 이것은 여전히 ​​불확실한 사람들에게 좋은 대답이다. –

+0

이 대답을 이해할 수 없습니다. Windows (예를 들어)에서 LoadLibrary를 사용하여 런타임에 실제로 라이브러리를 선택 /로드 한 다음 호출 할 다양한 함수의 주소를 요청할 수 있습니다. 위에서 설명한 내용은 "공유"라이브러리를 사용하여 각 실행 파일을 라이브러리 코드에 정적으로 링크 할 필요가없는 경우에 대한 것입니다. – David

+0

@David 질문의 제목을 다시 읽으십시오. 동적 공유 라이브러리를 사용하여 언급 했으므로 동적 응답 라이브러리를 사용하여 답변 한 내용에 놀라지 않아야합니다. –

관련 문제