2010-03-25 3 views
5

모든 부스트 라이브러리를 프로젝트에 추가하지 않고 부스트 스마트 포인터 라이브러리 만 포함하는 최상의 방법은입니까?BOOST 스마트 포인터 코드 만 프로젝트에 포함시키는 방법은 무엇입니까?

내 프로젝트에서 부스트 스마트 포인터 라이브러리 만 원한다면 체크/체크를하고 싶지 않다. 200 MB 소스 코드 (boost 1.42.0)를 내 프로젝트 저장소에 넣기 만하면된다. 무엇보다, 내 Windows 모바일 프로젝트 자체는 그 크기의 10 %에도 미치지 못합니다!

+1

부스트가 소스 제어하에 있어야합니까? – jalf

+0

나는 팀에서 첫 번째로 부스트를 사용하고 있으며 모두가 그다지 친숙하지는 않다. 내가 상자에서 컴파일하지 않는 (종속성이없는) 것을 커밋하면, 그것들은 번거로울 것이다. –

+1

일반적으로 생각하면 사람들은 상자에 부스트를 설치하게됩니다. 즉 표준 라이브러리처럼 취급하십시오. 그렇다면 커밋 할 필요가 없습니다. 이제는 항상 주위에 있습니다. – GManNickG

답변

16

스마트 포인터 라이브러리의 경우 두 가지 옵션이 있습니다.

  1. 소스 파일 (shared_ptr.hpp 등)에 포함 된 헤더를 복사하십시오. 그런 다음 프로젝트가 빌드 될 때까지 추가 파일을 복사하십시오 (디렉토리 구조를 유지해야합니다).
  2. 부스트 bcp 유틸리티를 사용하십시오. 큰 부분 집합의 경우이 도구를 사용하면 많은 시간을 절약 할 수 있습니다.

전자는 가능한 한 가장 적은 수의 파일이 프로젝트에 추가되도록합니다. 후자는 부스트의 실질적인 부분 집합에 비해 훨씬 빠르지 만, 필요하지 않은 많은 파일 (프로그램이 지원하지 않는 플랫폼의 호환성 헤더)을 포함 할 가능성이 높습니다.

+3

처음으로 bcp에 관한 소식을 들었습니다. +1. – BenG

+1

좋은. 아마 내가 먼저 bcp를 사용할 수 있고, 다시 수동으로 줄일 수 있습니다. 아니, 아니, 아니. –

2

원하는 코드가있는 폴더를 체크인하기 만하면됩니까? "그 외 모든 것"삭제/이동/이름 바꾸기를 시도하고 스마트 포인터 라이브러리에 어떤 외부 종속성이 있는지 확인하십시오. 모든 내장 코드 (예 : 라이브러리)가 필요하지 않기 때문에 거의 모든 헤더를 체크인하는 것이 좋을 것 같아요.

+0

확실히 최소한의 파일을 제공합니다. 1 파일, 을 추가하기 시작했습니다. 36 개의 파일이 추가 될 때까지 (139 KB) 모든 종속 파일을 하나씩 계속 추가합니다. 비교를 위해 bcp shared_ptr은 152 개의 파일 (481 KB)을 제공합니다. –

관련 문제