Visual C++のビルドでMSB4018が発生する
解決したいこと
自分でx64、x86用の構成を作ってビルドしたらMSB4018が発生しました。
"VCMessage" タスクが予期せずに失敗しました。
System.FormatException: インデックス (0 ベース) は 0 以上で、引数リストのサイズよりも小さくなければなりません。
場所 System.Text.StringBuilder.AppendFormatHelper(IFormatProvider provider, String format, ParamsArray args)
場所 System.String.FormatHelper(IFormatProvider provider, String format, ParamsArray args)
場所 System.String.Format(IFormatProvider provider, String format, Object[] args)
場所 Microsoft.Build.Utilities.TaskLoggingHelper.FormatString(String unformatted, Object[] args)
場所 Microsoft.Build.Utilities.TaskLoggingHelper.LogWarningWithCodeFromResources(String messageResourceName, Object[] messageArgs)
場所 Microsoft.Build.CPPTasks.VCMessage.Execute()
場所 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
場所 Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()
該当するソースコード
v2dというプロジェクトです。
自分で試したこと
これに従ってPlatformToolsetを確認しましたがありました。
MSB4018はアーキテクチャが合わないときにも発生することがあるそうです。
環境
- Visual Studio Community 2022 64ビット version17.10.5
- Visual C++ 2022
- DXライブラリ Ver3.24d
- lua 5.4.7
- nlohmann.json 3.11.2
0