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

C++빌더 Q&A
C++Builder Programming Q&A
[54275] Re:Re:Re:Builder 6 에서 Builder 2007로 포팅 시 문제입니다.
둘리 [dooly386] 1205 읽음    2008-08-08 14:45
아.. 2007에서 컴파일을 하셨군요..
일단 정확한 상황은 프로젝트 구성자체를 알수가 없어서 모르겠지만..
저도 이와 같은 상황은 격은적이 있었습니다.
깍지님의 상황가 같은것인지는 잘 모르겠습니다만.. 혹시 몰라 여기에 적습니다.

1. class method 의 경우 입니다.
2. class 의 method를 그냥 header 파일에 즉 class 선언 안에다가 method 자체를 작성 했습니다.
3. 이 클래스 파일을 bpl 로 만들었습니다.
4. 해당 bpl 을 link 하여 application에서 사용하였습니다.  link 를 못하더군요.. unresolved 에러가 나더군요
5. 해결책으로 해당 메소드를 cpp 로 옮겼습니다.
6. 해결이 되더군요..

정확한 이유는 검사하지 않았습니다. 바빠서.. 일단 컴파일/링크가 되어서 위와 같이 해결은 해습니다만...

정확한 이유는 저도 파악전이라..  
감으로는 header에 있으니 사용하는 쪽에 해당 함수에 대한 binary 가 생성 될 것이기에.. 이와 관련해서 발생하는 문지이겠지 하고 생각하고만 있습니다. Template 과 같은 상황일거라 생각해서...

정확한 답변을 드리지 못해 죄송합니다.

더운날씨에 몸건강 하세요~~




콩깍지.김구진 님이 쓰신 글 :
: 둘리님 먼저 답변 남겨주셔서 감사합니다^^
:
: Lib소스는 물론 있어서 2007로 빌드한 상태입니다.
: 이때 LIb를 빌드하는 옵션에서 Builder 6과 다른지.. 제대로 함수를 불러오지 못하더군요..
:
: Lib파일을 Builder 6에서 빌드해서 2007에서 사용하면 잘됩니다.
: 하지만 2007에서 Lib파일을 빌드해서 사용하려 하면 Lib내부 함수를 불러오지 못하네요..ㅠㅜ
:
: 이거저것 옵션을 넣다뺐다하면서 하곤있는데 아직까진 잘 안되고 있습니다^^;;
:
: 둘리 님이 쓰신 글 :
: : DLL과 다르게 Lib 는 static link 를 수행해야 합니다.
: :
: : lib 파일이 cbuilder 6에서 생산된 것이면 결국 cbuilder6의 vcl 및 lib 들을 물고 늘어질 것입니다.
: :
: : lib 소스가 있으시면 2007에서 다시 컴파일 하여 생성하시는것이 좋을듯 합니다만..
: :
: : 그렇지 않다면 cbuilder6 의 각종 필요한 library 등을 연결해 줘야 합니다.
: :
: : 일단 제가 테스트 한 바에 의하면  (bpl package 레벨을 가지고 테스트 했습니다)
: :
: : builder 6  -> 2007 로 가능하고  , 2007 -> builder 6 로도 가능 합니다.
: :
: : 문제는 컴파일 환경에 필요한 각종 파일들 (특히 vcl 관련이 다 6 와 2007 것 모두 필요하다는 것입니다)
: :
: : 수고하세요~~~
: :
: : 참고적으로:  Unresolved external  ~~~ 이런 에러는 이유는 딱 하나 링크 하려는 함수가 없다는 것이죠... 아니면 있어도 못찾는 것(이건 프로젝트 구성 환경에 좌우 되겠죠) 이죠...
: :
: :
: :
: :
: :
: : 콩깍지.김구진 님이 쓰신 글 :
: : : 자주 사용하는 모듈들을 Lib로 따로 빼줘서 만들었는데요..
: : : Builder 6에서는 빌드하고 사용하는데 아무런 문제가 없습니다.
: : :
: : : 하지만 2007에서는 위에서 컴파일한 Lib파일을 사용하는 프로젝트를 컴파일 할때
: : : "[ILINK32 Error] Error: Unresolved external ...." 이런식으로
: : :
: : : Lib파일에서 모듈을 제대로 불러오지 못하네요..
: : : Lib파일에는 폼도 조금 포함되어 있는데 폼 DFM도 불러오지 못한다며 컴파일이 안되네요..
: : :
: : : 제가 생각할때는 Lib를 컴파일할때 코드가 제대로 들어가지 않는거 같은데..
: : : Builder 6처럼 컴파일하려면 2007에선 옵션설정을 따로 해줘야 하는게 있나요?
: : : 2일째 좌절중입니다..ㅠㅠ 도와주십시요..

+ -

관련 글 리스트
54256 Builder 6 에서 Builder 2007로 포팅 시 문제입니다. 콩깍지.김구진 1279 2008/08/07
54270     Re:Builder 6 에서 Builder 2007로 포팅 시 문제입니다. 둘리 1217 2008/08/08
54274         Re:Re:Builder 6 에서 Builder 2007로 포팅 시 문제입니다. 콩깍지.김구진 1128 2008/08/08
54275             Re:Re:Re:Builder 6 에서 Builder 2007로 포팅 시 문제입니다. 둘리 1205 2008/08/08
54286                 Re:Re:Re:Re:Builder 6 에서 Builder 2007로 포팅 시 문제입니다. 콩깍지.김구진 1175 2008/08/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.