Xamarin 的 F# 交互板找不到单声道

标签 xamarin f# mono

在 OSX 上。

当我打开 pad 时,我收到此错误消息:/Library/Frameworks/Mono.framework/Versions/4.0.4/bin/fsharpi: line 24: exec: mono: not find

但是我可以构建并运行 F# 程序,因此 Xamarin 显然确实找到了 mono。

最佳答案

我遇到了同样的问题并设法解决如下:fsharpi 是一个 shell 脚本;它在第 24 行失败:

$EXEC mono $DEBUG $MONO_OPTIONS /Library/Frameworks/Mono.framework/Versions/4.0.4/lib/mono/4.5/fsi.exe --exename:$(basename "$0") "$@"

显然,当 Xamarin 启动 fsharpi 时,它找不到 mono 可执行文件,即使 $PATH 变量显然已正确设置并且可以从终端启动 fsharpi。 在我的 mac 上,mono 可执行文件位于“/Library/Frameworks/Mono.framework/Commands/mono”,因此我的修复方法是用以下内容替换该行:

MONO="/Library/Frameworks/Mono.framework/Commands/mono"
$EXEC $MONO $DEBUG $MONO_OPTIONS /Library/Frameworks/Mono.framework/Versions/4.0.4/lib/mono/4.5/fsi.exe --exename:$(basename "$0") "$@"

这不是最优雅的解决方案,但脚本中已经硬编码了 fsi.exe 路径,所以我认为这是可以接受的。

关于Xamarin 的 F# 交互板找不到单声道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32806615/

相关文章:

c# - NControl 绘制方法未触发

f# - F# Akka.NET 中的 System.create 错误

c# - 单声道的响应式(Reactive)扩展?

c# - F#该表达式应具有EventHandler类型,但此处具有类型unit

c# - Xamarin Grid 如何知道按下了哪个按钮

xamarin - 使用 Xamarin.Forms 自定义导航

xaml - 将事件绑定(bind)到 ItemsControl 中的按钮

visual-studio-2008 - Visual Studio Shell 和 F#(无效许可证)

macos - 在 MAC OS X 上的 MONO 中调用命令行

c# - X509CertificateCollection 中的 Mono NotImplementedException