2012-04-23 2 views
1

프로젝트에서 몇 가지 외부 라이브러리, libpng 및 libvorbis를 사용하고 싶습니다. 이제 리눅스에서, 나는 이것을 행복하게 빌드 할 수 있으며, 시스템 include 경로 외부에 빌드하고자하는 경우 여분의 include/lib 경로를 허용하도록 구성 파일을 scons에 추가 할 수 있습니다.Visual Studio 2010의 외부 라이브러리

그러나, MSVS 2010 약간 까다로워 것 같다 :

  • 난 그냥 사용자 속성 페이지에있는 VC++ 디렉토리에 이러한 라이브러리의 릴리스 버전의 경로를 추가 할 수 있지만이 작동하지 않습니다 정적 링크 (디버그 버전이 디버그 구성과 연결되어야하기 때문에).
  • 프로젝트에 절대 경로를 추가 할 수 있지만 프로젝트가 이식 가능하지 않음을 의미합니다.
  • libpng 디렉토리를 추가 한 다음 (예를 들어) Debug\libpng.lib을 링커 입력에 넣을 수 있지만 심볼을 찾을 수 없습니다. 아마도 그것은 \으로 인해 상대 경로라고 가정합니다.

현재 솔루션은 현재 필요한 모든 라이브러리를 현재 프로젝트의 솔루션 디렉토리에 복사하는 것입니다. 나는 거기에서 그들을 단단히 연결할 수 있었다. 그러나 이것은 어리석은 것처럼 보인다.

내 프로젝트를 이식성있게 유지하고 절대/lib 경로를 참조로 설정하려면 구성 당을 참조하십시오.

(예 좋지 않을까 의도적으로 .suo 또는 .user 파일의 경로를 넣을 수 있다는.)

답변

1

당신이 당신의 라이브러리의 상대 경로를 추가로 서문하려면 ". \" 기본 프로젝트 디렉토리에서 시작합니다.

".\Lib\Debug\libpng.lib" 

"또는 \"상위 디렉토리를 참조하십시오. 당신의 라이브러리가 상위 디렉토리의 상위 디렉토리에있는 경우, 당신은 ".. \"참조를 함께 체인 단지 수

"..\Lib\Debug\libpng.lib" 

참고 : 이미 상대 경로를 사용

"..\..\Lib\Debug\libpng.lib" 
+0

, 내가 원하는 프로젝트별로 프로젝트가 아닌 절대 경로를 수행하는 방법을 알고 있어야합니다. – Ricky26

+0

"도구 -> 설정 -> 프로젝트 및 솔루션 -> VC++ 디렉터리"로 이동하여 Visual Studio 전역 설정에서 절대 라이브러리 경로를 설정할 수 있습니다. 다른 컴퓨터의 서로 다른 위치에 설치할 수있는 일반적으로 사용되는 SDK를 구현하는 프로젝트에서는 상당히 일반적인 방법입니다. 그게 당신이 말하는거야? 그렇다면 답으로 다시 게시 해 드리겠습니다. – BTownTKD

+0

이것은 VS2010으로 제거되었으므로 구성 별 디렉토리를 허용하지 않으므로 정적 연결에서도 작동하지 않습니다. – Ricky26