インターネットからvs2015プロジェクトを見つけ、コンパイルするためにvs2019にアップグレードしました。mscore.libが見つからないというエラーが報告されました。システムを調べたところ、実際にそのようなファイルがないことがわかりました。インターネットで検索すると、ファイルがどこにあるかを明確に説明できる人はほとんどいません。
正解:
.NET Framework SDKでは、次の図に示すように、.NET Framework4.6ターゲットパッケージではなく.NETFramework 4.6.1SDKに含まれています。実際、それは任意のフレームワークSDKパッケージである必要があります。試してみましたが、インストール後すぐにコンパイルできます。
SDKをインストールしたくない場合は、次のように、これをプロジェクトにダウンロードして直接コンパイルします。
https://download.csdn.net/download/tanmx219/12745012
以下は、環境変数も設定されているインターネット上で提供されているリファレンスです(通常は必要ありません。SDKはこれらのパラメーターを独自に設定します)
[vc141] LNK1104:ファイルを開くことができません 'MSCOREE.lib
概要
C ++ / CLIプロジェクトをビルドできません。リンカーが戻る
LINK : fatal error LNK1104: cannot open file 'MSCOREE.lib'
調査
MSCOREE.lib
私のラップトップでは、「C:\ Program Files(x86)\ Windows Kits \ NETFXSDK \ 4.8 \ Lib \ um \ x64」フォルダーにあります。
「構成プロパティ-> VC ++ディレクトリ」では、「ライブラリディレクトリ」の値は次のとおりです。
$(VC_LibraryPath_x64)
$(WindowsSDK_LibraryPath_x64)
$(NETFXKitsDir)Lib\um\x64
パラメータが適用された後は、
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.16.27023\lib\x64
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.16.27023\atlmfc\lib\x64
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\VS\lib\x64
C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\ucrt\x64
C:\Program Files (x86)\Windows Kits\10\lib\10.0.16299.0\um\x64
lib\um\x64
Lib\um\x64
下部の最後の2行を参照してください。これらはの値です $(NETFXKitsDir)Lib\um\x64
。
そのため、ツールセット「vc141」の何らかの理由で、NETFXKitsDirの値が定義されていません。にNETFXKitsDir
等しい環境変数 を作成 C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\
すると、プロジェクトをビルドできます。
環境:
- Visual Studio 2019
- ツールセット:vc141
- プロジェクトのターゲットフレームワークバージョン:4.7.2
インストールされたパッケージ
- NET Framework4-4.6開発ツール
- NET Framework4.6.1開発ツール
- NET Framework4.8開発ツール
- v142ビルドツールのC ++ / CLIサポート
- v141ビルドツールのC ++ / CLIサポート
- MSVC v141-VS 2017 C ++ x64 / x86ビルドツール(v14.16)