是否可以使用Mono(Mac)运行LINQPad

kwc*_*cto 33 linux mono linqpad docker windows-subsystem-for-linux

我在Snow Leopard中安装了Mono 2.6.7并想运行LINQPad.我已经启动LINQPad(v2.21)但是立即得到一个FileNotFoundException.有没有人能够成功运行它?

我认为异常是因为它试图读取/写入配置文件或其他东西,但希望有一些解决方法.

谢谢.

编辑:使用"Olive"构建Mono(WPF所需):

在终端:

svn co svn://anonsvn.mono-project.com/source/trunk/olive
cd /Users/(your user name)/olive
./configure --prefix=/Users/(your user name)/olive --with-glib=embedded
make
make install
Run Code Online (Sandbox Code Playgroud)

现在在Finder中导航到:

/ Users /(您的用户名)/ olive/lib/mono/gac

将这些文件夹(例如:PresentationCore,PresentationFramework)复制到:

/Library/Frameworks/Mono.framework/Versions/2.6.7/lib/mono/gac(当前的Mono版本是2.6.7,但这显然可能有所不同)

编辑:不幸的是,现在我在运行LINQPad时得到了这个:

警告**:无法加载类System.Windows.Resources.AssemblyAssociatedContentFileAttribute,在LINQPad中使用不能加载,在LINQPad中使用

编辑: Xamarin工作簿最近发布了1.0(https://developer.xamarin.com/workbooks/),是我在macOS上看到的LINQPad最接近的.

编辑(2017年9月): 这仍然是投机性的!

使用Docker和Windows子系统Linux(WSL)可以运行大多数Windows应用程序(包括GUI应用程序):

在Ubuntu上运行的cmd.exe的动画演示

有关详细演练,请参阅https://blog.jessfraz.com/post/windows-for-linux-nerds/上的博客文章.

Joe*_*ari 33

LINQPad在Mono中不起作用主要是因为它依赖于ActiPro的SyntaxEditor,它执行一些Win32互操作.LINQPad本身也做了一些互操作.

LINQPad的早期原型使用TextBox而不是语法编辑器 - 这可能是针对Mono测试的.

  • @JoeAlbahari自.NET Core以来对此的任何更新都在增加?我真的很想在Ubuntu上运行LINQPad. (12认同)
  • 嗯,我想你比任何人都更清楚.至少我对Mono有点了解.谢谢乔...... (5认同)
  • 更新:我已经找到了LINQPad的旧版本(0.92)并将其上传到这里:www.linqpad.net/LINQPad092.zip.确保通过快捷方式(使用-noupdate和-noforward开关调用LINQPad)运行它,否则LINQPad将自行修补到最新版本. (3认同)

小智 5

我还想让 LINQpad 在 OSX 下运行,并且在使用上面链接的 Joe 的 0.92 版本后发现这似乎不可能。

尽管该应用程序在单声道下启动并显示熟悉的 LINQPad 屏幕,但如果您尝试运行任何查询,它只会崩溃并消失。

原因是该 LINQPad 版本中似乎使用了 WebBrowser 控件,并且根据终端窗口中显示的错误,似乎需要 libgluezilla。通过对 libgluezilla 的一些挖掘,我看到 Mono 开发人员的一些回复说它不适用于 mac,这很遗憾。

错误供参考:

mono linqpad.exe
libgluezilla not found. To have webbrowser support, you need libgluezilla installed
Run Code Online (Sandbox Code Playgroud)