Mono Pkg-Config.exe保持崩溃?

问题描述:

我是Mono的新手 - 我想给跨平台一个尝试 - 我的主要IDE是Visual Studio,因此通过命令提示符构建应用程序的过程对我来说有点陌生。Mono Pkg-Config.exe保持崩溃?

我跟着Mono Basics教程,已经到了它说的地步Winforms Hello World。我复制了提供的代码并将其保存到一个.cs文件(在桌面上)。

然后我打开一个命令提示符并将其指向桌面目录。我跑的命令:

mcs hello.cs -pkg:dotnet 

,结果是: Pkg-Config.exe not working

控制台告诉我,这是一个错误CS8027但没有别的。

我有我加的,没有固定3个环境变量:

  • PATH - >路单声道\ BIN
  • PATH - >路单声道\ LIB \ pkgconfig
  • PKG_CONFIG_PATH - >路径到mono \ lib \ pkgconfig

只要我尝试使用pkg-config.exe(尝试使用pkg-config.exe --list-all但出现同样的问题),就会发生这种情况。

我查看了其他有关CS8027错误的答案/问题,但解决方案没有帮助 - 它仍然每次都崩溃!

+0

你修复了这个问题吗?我现在有同样的问题。首先是GTK#的问题,并与PATH dll(完全地狱)混乱,现在这是固定的我得到pkg-config崩溃...... :( –

pkg-config使用不同版本的MSVC构建到Mono本身。您需要安装32位VC++ 12运行时才能运行。这应该将包含在mono.msi,按https://github.com/mono/release/commit/8394dcc254510977c3e654abf916a48c6c6894fb

如果您检查Windows事件日志,在应用程序下,你可能会得到什么没有工作的更多信息。

有同样的问题。我安装了所有正确的VC++运行时,但仍然崩溃。

pkg-config.exe引用以不同版本的.Net编译的库(.dll)。您的PATH(或pkg-config本身)可能引用与.dll使用的版本不同的版本,或者根本没有。

pkg-config无论如何都是短暂的。我固定它通过明确包括我使用的.Net的正确版本,我引用的.dll:

mcs hello.cs -r:"C:\Program Files\Mono\lib\mono\4.5-api\System.Windows.Forms.dll" 

我有这个问题,可以帮助一些。

D:\Code\Mono>mcs hello.cs -pkg:dotnet 
error CS8027: Error running pkg-config. Check the above output. 

我需要下载以下DLL:从https://www.dll-files.com/

  • libiconv的-2.DLL
  • libgcc_s_sjlj-1.DLL
  • 的libintl-8秒。dll的
  • libglib-2.0-0.dll

把它们放在C:\ Program Files文件\单声道\ BIN

所有的DLL应该是32位,即使单是64位。