我是VS代码/ F#的新手(如果这很愚蠢,我很抱歉),并且我试图构建一个F#控制台应用程序(在Windows工作站和Linux计算机上)。
我与FAKE一起安装了Ionide扩展程序。
我正在考虑的代码是Iris示例(请参见How to translate the intro ML.Net demo to F#?),它使用Ionide并使用Microsoft.ML创建了一个新的F#项目。
我的iris.fsproj
是
<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net461</TargetFramework>
<DebugType>portable</DebugType>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</PropertyGroup>
<ItemGroup>
<Compile Include="iris.fs" />
<None Include="App.config" />
</ItemGroup>
<Import Project="..\.paket\Paket.Restore.targets" />
</Project>
运行脚本时(我使用“播放”按钮,也称为F#:运行VS Code / Ionide提供的脚本),我得到:
C:\Users\MyUser\.nuget\packages\microsoft.ml\0.2.0\build\Microsoft.ML.targets(16,5): error : Microsoft.ML currently supports 'x64' processor architectures. Please ensure your application is targeting 'x64'.
与
一起 Running build failed.
Error:
System.Exception: dotnet build failed
如何使用Ionide提供的项目结构来定位x64?
答案 0 :(得分:9)
应该像在PropertyGroup
部分中添加以下行一样简单:
<PlatformTarget>x64</PlatformTarget>
使用Condition
属性可以根据编译器的各种命令行参数设置平台目标,这可能是更复杂的设置,但这应该是使您启动并运行的最简单方法。