Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[14126] Re:Re: 빌더님 어떻게 해야 할지 모르겠습니다.
하두고 [hadugo] 2202 읽음    2012-02-18 10:42
빌더님 감사합니다.
하지만 제 실력이 미천하다 보니 전체적인 내용이 이해는 되지만 그걸 어떻게 해야 할지를 모르겠습니다.
다 된 밥 알아서 먹지도 못하니 밥상을 차려 달라고 하면 지나친 부탁일까요?
하지만 제겐 너무 중요한 것이다보니 부탁 좀 드리겠습니다.

빌더 님이 쓰신 글 :
: 하두고 님이 쓰신 글 :
: : WindowsXP_Home에 DelphiXE2 정품을 구매하여 사용하고 있습니다.
: :
: : 빌더님 도움으로 구글 코드사이트에서 MustangPeak를 다운 받았습니다.
: :
: : 다운받은 컴포넌트는
: : CommonLIB, EasyListView, VirtualTreeView, VirtualShellTools
: : 이렇게 4개인데요.
: :
: : CommonLIB와 EasyListView는 이상없이 설치가 잘 되었습니다.
: :
: : 그런데 VirtualTree 설치 중
: : VirtualTreesD는 이상없이 컴파일이 되고 Install도 되는데요.
: :
: : VirtualTreesR을 Compile 하면 에러메세지가 나옵니다.
: : 이 에러메세지는 적어 놓지를 않았네요.
: : 그런데 이상한건 Compile할때 에러가 나던 것이 Build를 하면 에러가 안납니다.
: : 그리고 Build를 한 다음 Compile를 하면 이상 없이 진행되구요.
: :
: : 그런데 문제는 그 다음입니다.
: : 마지막으로 VirtualShellTools를 설치해야 하는데
: : VirtualShellToolsD16를 Compile하면
: : [DCC Fatal error] VirtualTreesR.dpk(39) : F2048 Bed unit format : 'C:\Mustangpeak\VirtualTreeView\Source\VirtualTrees.dcu' - Excepted version 23.0, windows unicode(x64)
: : 이렇게 나옵니다.
: :
: : 해외사이트의 도움을 받아
: : VirtualTreesR에서 {$IMPLICITBUILD OFF}를 {$IMPLICITBUILD ON}으로 수정하니 VirtualTreesD는 에러가 없어졌습니다.
: :
: : 이렇게 하고 VirtualShellTools를 다시 컴파일 하면
: : 이번에는
: : [DCC Fatal error] VirtualTreesR.dpk(1) : E2225 Never build package 'VirtualTreesR' must be compiled
: : 이렇게 나옵니다.
: : 물론 앞에서 'VirtualTreesR'는 컴파일이 되었는데도요.
: :
: :
: : 참고로
: : Tool->Options->Delphi Option->Library에서 [32bit Windows]의 [Library Path]에는
: : C:\MustangPeak\CommonLib\Delphi
: : C:\MustangPeak\CommonLib\Source
: : C:\MustangPeak\EasyListView\Delphi
: : C:\MustangPeak\EasyListView\Source
: : C:\MustangPeak\VirtualTreeView\Packages\Delphi XE2
: : C:\MustangPeak\VirtualTreeView\Common
: : C:\MustangPeak\VirtualTreeView\Source
: : C:\MustangPeak\VirtualShellTools\Delphi
: : C:\MustangPeak\VirtualShellTools\Source
: : 이렇게 추가했습니다.
:
:
:
:
: 답변...
:
:
: 무조건 컴파일 하고 보자는 식으로 빌드 부터 하지 말고, 패키지 소스코드를 확인해서 상호 의존관계 부터
: 파악하는게 순서일 겁니다. 서로 의존적인 관계를 갖고 있는 패키지들을 컴파일 할 땐, 빌드 순서가 중요
: 하니까요.
:
: {$IMPLICITBUILD ON} ... IMPLICITBUILD를 ON으로 해서 컴파일 하는 것은 결코 좋은 방법이 아닙니다.
: 특히 패키지들이 상호 의존적인 관계를 가질 땐.. 더욱 그렇죠. 설령 컴파일이 된다고 해도, 다음 단계의
: 빌드 과정에서 문제가 일어날 수 있기 때문입니다.
:
:
: [DCC Fatal error] VirtualTreesR.dpk(1) : E2225 Never build package 'VirtualTreesR' must be compiled
:
: 위와 같은 빌드에러는...  IMPLICITBUILD를 ON으로 설정하고 컴파해서 일어난 부작용으로 보입니다.
:
:
:
: [DCC Fatal error] VirtualTreesR.dpk(39) : F2048 Bed unit format :
:            'C:\Mustangpeak\VirtualTreeView\Source\VirtualTrees.dcu' -
:                 Excepted version 23.0, windows unicode(x64)
:
: VirtualTreesR 패키지가 명시적으로 타겟 플렛폼이 지정되지 않은 채 빌드되다 보니까...
: Win64 타겟 플렛폼으로 빌드 돼 버렸고, VirtualShellTools의 dcu 파일들과 오브젝트 속성이
: 서로 다르게 생성되어(32비트 dcu 파일과 64비트 dcu 파일의 충돌) 일어난 문제 같네요.
:
: VirtualTreesR (.dproj)에 정의되어 있는 부분
:
: <Platform Condition="'$(Platform)'==''">Win64</Platform>   // Default로 Win64로 되어 있음
:
:
: 런타임과 디자인타임 모듈간의 종속성... 그리고... 이런 종속성을 갖는 모듈들 서로가 또 상호 종속적인
: 관계를 가질 때는... 사용자가 빌드과정에 개입 해줘야 합니다.
:
: 마이크로소프트 사의 Visual Studio 같은 개발환경은... 이 부분이 아주 잘 되어 있죠. 사용자가 빌드과정을
: 의도대로 완전히 콘트롤 할수 있는 것은 물론이고, 심지어는 GCC 같은 컴파일러를 개발환경 자체에 통합
: 시키는 것도 가능하고요.
:
: 그에 비하면 Embarcadero사의 개발환경은 이런 부분이 취약합니다.
:
: RAD XE2 환경에선... 모듈간의 상호종속 관계에 따라서 수동으로 빌드하는 방식을 택하거나...
: 아니면 Build Events에서 Pre-build events 코맨드 스크립트를 정의해서 개입 하면 됩니다.
:
: 코맨드 스크립트를 정의해서 빌드하면... 개개의 패키지를 따로 install 할 필요 없이, 한번의 패키지 인스톨로 모든
: 패키지가 인스톨 되게 해주는 것도 가능하고요.

+ -

관련 글 리스트
14121 Delphi XE2에 MustangPeak 설치가 안됩니다. 도와주세요. 하두고 2777 2012/02/16
14125     Re: 상호 의존적인 다중 패키지 컴파일 빌더 3051 2012/02/17
14126         Re:Re: 빌더님 어떻게 해야 할지 모르겠습니다. 하두고 2202 2012/02/18
14127             Re:Re:Re: 패키지 컴파일 - 전체 파일 첨부 빌더 2289 2012/02/18
14132                 Re:Re:Re:Re: 패키지 컴파일 - 전체 파일 첨부 하두고 2043 2012/02/20
14128                 Re:Re:Re:Re: 감사합니다!!! 빌더님!! sudden 1848 2012/02/19
14122     Re:Delphi XE2에 MustangPeak 설치가 안됩니다. 도와주세요. sudden 1871 2012/02/16
14123         Re:Re:다운받은 MustangPeak올려드립니다. XE2에서 설치하는 방법 좀 알려주세요. 하두고 1972 2012/02/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.