Windows 7下编译F#编译器遇内存异常等问题求助
编译F#编译器问题的解决方法
问题1:build.cmd -noVisualStudio触发System.OutOfMemoryException
12G内存足够编译,但大概率是单个编译进程被限制为32位,无法充分利用内存,可尝试以下方案:
- 强制使用64位MSBuild编译,执行命令:
build.cmd -noVisualStudio -Use64BitMSBuild - 减少并行编译的进程数,避免内存瞬时占用过高,比如:
build.cmd -noVisualStudio -maxCpuCount:2 - 若仍有问题,可修改MSBuild配置文件(找到本地MSBuild安装目录下的
MSBuild.exe.config),在<configuration>节点内添加:<runtime> <gcAllowVeryLargeObjects enabled="true" /> </runtime>
问题2:build.cmd提示“System.Version have no new method”
这个错误是.NET SDK版本不匹配或本地依赖缓存异常导致的,解决步骤:
- 查看仓库根目录的
global.json文件,确认要求的.NET SDK版本,安装对应版本后重新执行编译 - 清理本地NuGet缓存,执行命令:
dotnet nuget locals all --clear,再重新运行build.cmd - 确保Visual Studio安装了完整的F#开发组件及对应版本的.NET SDK组件,若缺失则补充安装
内容的提问来源于stack exchange,提问作者wang kai
相关产品推荐
相关产品推荐

