어떤 라이브러리가 필요한가요를 링크 제 혼합 모드 응용 프로그램을까?

StackOverflow https://stackoverflow.com/questions/9570

  •  08-06-2019
  •  | 
  •  

문제

요합니다.NET 지원으로 우리의 C++응용 프로그램입니다.
그것은 오래된 학교 MFC 응용 프로그램과 함께,1extra 파일로 컴파일"/clr"옵션을 참조하는 CWinFormsControl.

나는이 허용되지 않을 제거하는 링커는 플래그"/NODEFAULTLIB".
(우리는 우리 자신의 빌드 관리 시스템,Visual Studio.)
이것이 의미를 지정한 모든 필요한 라이브러리:VC 런타임과 MFC.

다른 컴파일러 옵션을 포함한"/MD"

옆:나는 사용할 수 없습 링커는 플래그"/력:"여러 단지 추가 모든 것:
내가 찾는 것은 비 겹치는 설정의 라이브러리입니다.

도움이 되었습니까?

해결책 3

어떻게 해결된다:

  1. 링크와 함께"/FORCE:여러/자세한 정보"(는 링크인)및 출력을 설정합니다.
  2. 링크와 함께"/NODEFAULTIB/자세한 정보"및 미량 모든 unresolveds 에서 출력의 이전 단계에 추가 라이브러리 제 1 1.
  3. 이 결과에 복식:"AAA.lib:XXX 에 이미 정의된 BBB.lib"
  4. 그런 다음 마지막으로 그것을 얻었:다시 컴파일이 관리되고 관리되지 않 유닛/MD 과 링크(다른 사람의 사이에서):mscoree.lib msvcmrt.lib mfcm80d.lib

혼합/MT(관리되지 않)및/MD(관리)이 될 수 밖에 없는 나쁜 생각:다른(겹치는)라이브러리가 필요합니다.

@ajryan:Dependcy 워커는 나에게 말 dll 을 사용하지 않는 어떤 라이브러리에 연결할 때 연결을 제공합니다.(예:msvcmrt.lib?) 나는 생각한다.

감사에 대한 답변!

다른 팁

로 최소한의:

mscoree.lib MSVCRT.lib mfc90.lib(조정 버전 적절한)

고 반복합니다.

를 사용하여 응용 프로그램을 만들 베어 뼈 MFC 응용 프로그램에서 당신의 스타일(SDI/MDI/대화상자)다음 에 따라 달라집.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top