안녕하세요. 천리안 프로그래머포럼 C++Builder 담당자 임펠리테리입니다.
질문하신 것에 대해서는 수차 답변을 했습니다. 적어도 세번정도?
빌더와 델파이에서 패키지의 개념을 도입한 것은 무엇보다도 배포할 실행파일의
크기를 줄이기 위한 것이죠. 비주얼씨에서 mfcxxx.dll을 제외한 실행파일이 무지하게
작아지듯이 말이죠. 하지만 인프라이즈에서 의도했던 만큼 이 패키지 파일들이
일반화되진 못해서, bpl 파일들이 깔리지 않은 컴퓨터에 작성된 어플을 설치하려면
오히려 1메가가 넘어가는 많은 bpl 파일들을 같이 깔아줘야하는 우스운 꼴이 되었죠.
이러한 경우를 막기 위해, 각 패키지의 내용중 동적으로 링크될 부분들을 미리 정적
으로 링크하여 완전히 스탠드얼론으로 만들어주기 위한 옵션이 있습니다.
그것이 말씀하신 Build with runtime package 옵션입니다. 이 체크박스의 체크표시를
지워주면 패키지에서 동적으로 링크될 부분을 모두 정적으로 링크해서 bpl 파일들
없이 실행가능한 실행파일이 만들어집니다. 단 이경우에 실행파일의 크기가 최소
200k 이상 커집니다.
이와 비슷하게, 패키지 파일들 외에도 빌더에서 기본적으로 동적으로 링크하는 dll
파일들이 몇개 더 있습니다. 기본적으로는 borlndmm.dll과 cp3240mt.dll이 필요하죠.
이것들도 정적으로 링크하려면, 프로젝트 옵션에서 링커 탭을 찾아 그 옵션중
use dynamic rtl 체크박스의 체크표시를 지워주면 됩니다.
그럼 참고하시길..
독립문에서 임펠리테리였습니다.
(cbuilder, cbuilder@thrunet.com)
|