bai*_*rog 10 msbuild c++-cli .net-core visual-studio-2019
通过msbuild命令编译成功(“%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\MSBuild.exe” CLRNetCoreTest.sln /p:Configuration=Debug /p:Platform=x86)。
这很奇怪 - 我认为dotnet是构建在msbuild之上的包装器..
附上示例项目(运行Build.bat进行编译)。
要添加更多详细信息:
这很奇怪 - 我认为 dotnet 是构建在 msbuild 之上的包装器。
同意Martin 的观点,dotnet build
目前不支持构建 C++ 项目,因为 dotnet cli 不知道在哪里可以找到必要的 C++xx.targets
和xx.props
.
您的项目是一个 C++/CLR 项目(xx.vcxproj),其目标框架是,它与实际项目(xx.csproj 或 xx.vbproj).net core
有很大差异,导入了许多 C++ 特定文件,这些文件未包含在..net core
xx.vcxproj
.net core sdk
例如:在 Go 中C:\Program Files\dotnet\sdk\xxx
你可以找到很多 msbuild 目标和 props 文件,但找不到Microsoft.Cpp.Default.props文件。该文件来自 C++ 工作负载而不是 .net core SDK。
因此,虽然dotnet build
使用 msbuild 来构建项目,但它实际上并没有使用 VS 文件夹( )中的相同 msbuild.exe C:\Program Files (x86)\Microsoft Visual Studio\xxx\xxx\MSBuild\1xxx\Bin\MSBuild.exe
。并且只能使用 VS IDE 或 MSBuild 构建工具包中的 msbuild.exe 来构建此项目。
此外:
如果您的最终目标是在远程服务器中构建项目,也许您正在寻找 Build Tools for Visual Studio 2019` 包。(如果您已获得相应的许可,则免费,更多详细信息请参阅此)它不需要 VS IDE待安装。(此处下载链接)
归档时间: |
|
查看次数: |
2688 次 |
最近记录: |