我正在尝试使用 MonoDevelop 在 Ubuntu 中编译 Visual Basic。我已按照说明安装了 MonoDevelop 4.2.2此主题来自“ppa:ermshiperete/monodevelop”。但是我无法构建示例 Visual Basic 项目。出现以下错误:
/opt/monodevelop/lib/mono/4.5/Microsoft.VisualBasic.targets: Error: Error executing task Vbc: Argument cannot be null.
参数名称:pathToTool(测试)
我显然缺少一些构建 VB 项目的设置,有什么想法可以让它们工作吗?
我试过了:
- 阅读提到的 VB 目标文件并没有明显地显示我应该在哪里定义 pathToTool 参数,而且我不确定它所指的 Visual Basic 工具是否已安装(虽然我不知道在哪里查找。)
- 使用带有 Visual Studio 的 VM。这可行,但很烦人。
- 使用更好的编程语言;大学的选择。
答案1
我使用 openSUSE 13.1 并从“Mono:Factory”存储库安装了 MonoDevelop 5.0.1。这些是我解决问题时使用的步骤:
注意:如果您不想使用“MSBuild 构建引擎“如步骤 3.3 中所述
备份“/usr/lib/mono/4.5/Microsoft.VisualBasic.targets”然后以 root 身份打开它:
sudo kate /usr/lib/mono/4.5/Microsoft.VisualBasic.targets
或者
sudo gedit /usr/lib/mono/4.5/Microsoft.VisualBasic.targets
在“vbc”部分中,将最后一个参数“ToolPath”更改为 vbnc 所在的目录:
如果遇到此错误,请更改 MonoDevelop 中“项目”的一些配置:
错误 VBNC2017:找不到库“Microsoft.VisualBasic.dll”。
在 MonoDevelop 中,进入菜单“Project\YOURPROJECTNAME Options”
在“Build\General”中将“目标框架”设置为“Mono / .net 4.0”:
目标框架:Mono / .net 4.0
- 在“Build\Compiler”中将“附加编译器参数”设置为“-libpath:YOUR-PATH-TO-MONO-4.0”
附加编译器参数:-libpath:/usr/lib/mono/4.0/
如果您收到上述错误,请再次转到“Build\General”,然后在“Build Engine”部分下取消选中“使用 MSBuild 构建引擎...”