MFCツール1を使ったソースコードをVisual Studio 2019でビルドすると、エラーが出る現象がありました。 どうやらVSのバグらしいのですが、これを解決する方法をまとめます🐜
ビルドできない現象に遭遇するまでの状況を整理
やりたいこと
MFCツールを使ったGUIアプリ(.cppソースコード)をVisual Studio 2019 Communityでビルドしたいという場面でした。MFCの導入
既存のGUIアプリがMFC(Microsoft Foundation Class)を使用していたため、Visual Studio Installerを起動して、以下のツールを追加しました。- 最新のv142ビルドツール用C++MFC(x86およびx64)
- v142ビルドツール(14.23)のC++/CLIサポート
- v142ビルドツール用C++モジュール(x64/x86 - 実験的)
既存GUIの.cppファイルをビルド
上記をインストール後にビルドすると、以下のようなエラーと出力が得られました。
以上から、どうやらC1001とLNK1000を解決すれば良さそうだとわかりました。。
C1001とLNK1000の解決方法
色々ググった結果、最適化の設定を変えればよいことがわかりました。
以下手順です。
- VSのリボンにある「デバッグ」→「hogefugaプロパティページ」をクリック
※hogefugaはソリューション?プロジェクト?名に置き換えてください。 - 「構成プロパティ」→「C/C++」→「最適化」をクリック
- 「プログラム全体の最適化」を「いいえ」に変更し、OKをクリック
- F5キーを押下し、デバッグの開始をするとエラーが出ないことを確認できればOK
おわりに
VSをあまり普段から使わない分、意外とハマってしまいました。
参考になれば幸いです(^^)
参考文献
以下の情報より、今回の現象はコンパイラエラーであり、Visual Studio Community 2015では修正されているようです。
-
GUI作るときって何使うべきなんでしょう?そもそもC++ではやらないかw↩