kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

VS2003からのC++プロジェクトアップグレードするとLNK1117エラーが出る場合の対処

Visual Studio .NET 2003のC++プロジェクトからVisual Studio 2008のC++プロジェクトにアップグレードしました。するとWin32 Debugで生成するとこんなエラーが。

LNK:1117オプション '/MAP:LINEINFO' に構文エラーがあります。

どうやら/MAP:LINEINFOは削除されたオプションなので、削除しろと言われても、Visual C++プロジェクトプロパティに/MAP:LINEINFOはありません。これはVCのプロジェクトファイルに書かれてあるだけで、プロジェクトのプロパティからは設定できないので、一度ソリューションファイルを閉じましょう。
vcprojファイルは単なるテキストファイルなので、メモ帳で開くとこんな行があるはずです。これはもちろん、/MAP:LINEINFOだからこうなっているだけです。

AdditionalOptions="/MAP:LINEINFO"

これでvcprojファイルを保存して、再生成すればOKです。新しいコンパイラでUIをサポートしていないオプションは全部ここに行くんでしょうか。ということで、UIで設定できないオプションでエラーになったときはここを見てください。