error C1189: #error: Please use /MD

プロジェクトの設定で「スタティック ライブラリで MFC を使用する」から「共有 DLL で MFC を使う」に変更すると,次のエラーになることがある.
—— ビルド開始: プロジェクト: MkCmf, 構成: Release Win32 ——
StdAfx.cpp
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.22.27905\atlmfc\include\afxver_.h(77,1): error C1189: #error: Please use the /MD switch for _AFXDLL builds
プロジェクト “MkCmf142.vcxproj” のビルドが終了しました — 失敗。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========


対応方法はエラーメッセージにある様に
「マルチスレッド(/MT)」から「マルチスレッド DLL(/MD)」に変更する.
ランタイムライブラリの設定を「マルチスレッド DLL(/MD)」に変更する


同様に「共有 DLL で MFC を使う」から「スタティック ライブラリで MFC を使用する」に変更した場合.
—— ビルド開始: プロジェクト: AsHVR, 構成: Release Win32 ——
StdAfx.cpp
c:\program files (x86)\microsoft visual studio\2017\professional\vc\tools\msvc\14.16.27023\atlmfc\include\afx.h(24): fatal error C1189: #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
プロジェクト “AsHVR142.vcxproj” のビルドが終了しました — 失敗。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
この場合は「マルチスレッド(/MT)」に変更する.

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ



コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください