Arch Linux下F# 7.0编译DLL遇fsi.exe报错求助
Arch Linux下F# 7.0 fsi.exe异常问题排查方案
核心报错信息
Exception by fsi.exe: System.Exception: Error creating evaluation session: StopProcessingExn
排查与解决步骤
- 验证.NET SDK完整性:运行
dotnet --info,确认输出中包含F# SDK相关组件,若缺失则重新安装dotnet-sdk-7.0包。 - 检查环境与权限:
- 执行
which dotnet确认调用路径为系统标准.NET安装路径; - 以普通用户身份运行
dotnet fsi,避免root权限引发的异常; - 确保
LD_LIBRARY_PATH包含.NET运行时库路径(如/usr/share/dotnet/shared/Microsoft.NETCore.App/7.0.x/)。
- 执行
- 测试最小化场景:
- 创建仅含
printfn "test"的test.fsx文件,执行dotnet fsi test.fsx; - 无参数启动
dotnet fsi后,手动输入1+1;;,验证交互式解释器是否正常工作。
- 创建仅含
- 补充系统依赖:安装
icu、libunwind、krb5等.NET常用依赖包,运行ldd $(which dotnet)检查是否存在缺失库。 - 重置.NET环境:删除
~/.dotnet下的缓存文件,或执行dotnet clean清理残留编译文件后重试。
内容的提问来源于stack exchange,提问作者The Piccion
相关产品推荐
相关产品推荐

