プラットフォームを x86 に指定した時によく出会すエラー。
いつも忘れてググるのでメモ。
LNK1112: モジュールのコンピューターの種類 'X86' は対象コンピューターの種類 'x64' と競合しています。
指定したプラットフォームとプロジェクトのプロパティ指定が食い違っている。
以下を切り替える。
構成プロパティ > リンカー > 詳細設定 > 対象コンピューター
-- MachineX64 (/MACHINE:X64)
++ MachineX86 (/MACHINE:X86)
LNK1158 'rc.exe' を実行できません。
rc.exe
は$(WindowsSdkDir)bin\x64
と$(WindowsSdkDir)bin\x86
の配下に存在するが、
名前順で前者のrc.exe
が先にヒットしてしまっているようだ。
x86配下の32bit用rc.exe
が先にヒットするように実行ファイルパスを追加する。
構成プロパティ > VC++ ディレクトリ > 実行可能ファイルディレクトリ
-- ...$(WindowsSdkDir)bin;...
++ ...$(WindowsSdkDir)bin\x86;$(WindowsSdkDir)bin;...