【问题标题】:cannot compile gtk# example无法编译 gtk# 示例
【发布时间】:2012-01-12 12:49:14
【问题描述】:

我正在尝试在 Windows 7(64 位)中编译位于 http://mono-project.com/Mono_Basics 的“GTK# Hello World”示例。我收到此错误:

错误 CS8027: 无法运行 pkg-config: ApplicationName='pkg-config', CommandLine ='--libs gtk-sharp-2.0', CurrentDirectory=''

我已经成功编译并运行了“Console Hello World”示例。

我已经安装了 Mono-2.10.8。

提前感谢您的帮助

【问题讨论】:

  • 您能否提供更多详细信息,例如编译器选项。如果您使用 MonoDevelop 进行编译,则 Monodevelop 使用安装在机器上的 MS .Net 框架。
  • 你安装了'pkg-config'吗?开箱即用的 Windows 并非如此。
  • 我安装了mono-2.10.8-gtksharp-2.12.11-win32-1.exe进行编译。我正在使用“gmcs hellogtk.cs -pkg:gtk-sharp-2.0”进行编译。我在 Mono /bin 文件夹中有 pkg​​-config.exe。我试图用gtk.org/download/win64.php 找到的最新版本替换它,但我一直收到同样的错误。
  • 在这种情况下,您应该能够通过将 Mono 的文件夹添加到 PATH 来编译它。或者 - 只需使用执行此操作的 Mono 命令提示符 - 并在其中运行您的命令。
  • 按照建议,我已经运行了 Mono 命令提示符,但我一直在发送相同(或类似)的错误消息:“错误 CS8027:运行 pkg-config 时出错。检查上述输出。”跨度>

标签: windows-7 mono


【解决方案1】:

我尝试在 Windows 7 中使用 Mono 2.10.8 和您在编译器中使用的选项编译 GTK# 示例,所以我遇到了同样的错误,然后我尝试手动引用每个程序集,所以它工作正常。

这是完整的命令,我在 Mono 2-10.8 命令提示符下测试过。

gmcs ButtonApp.cs -r:C:/PROGRA~2/MONO-2~1.8/lib/mono/gtk-sharp-2.0/pango-sharp.dll,C:/PROGRA~2/MONO-2~ 1.8/lib/mono/gtk-sharp-2.0/atk-sharp.dll,C:/PROGRA~2/MONO-2~1.8/lib/mono/gtk-sharp-2.0/gdk-sharp.dll,C:/ PROGRA~2/MONO-2~1.8/lib/mono/gtk-sharp-2.0/gtk-sharp.dll

希望对你有帮助

【讨论】:

    【解决方案2】:

    您试图使用您没有的 pkg-config。带有--libs 的 pkg-config 将指定的包(如您的情况下的 gtk-sharp-2.0 )转换为对库的引用。如果你不想安装 pkg-config,你有两个选择:

    • 使用编译器选项手动引用所需的库;
    • 创建一个引用这些库的项目。

    我推荐第二个选项,因为通过直接指定所有源和引用进行编译可能对 hello-world 示例有好处,但不适用于更大的示例。您将制作自己的脚本来编译项目,所以为什么不使用专门为此而设计的东西——比如 xbuild 或 make。 MonoDevelop 应该包含空的 Gtk# 项目模板。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-30
      • 2011-07-23
      • 2020-09-13
      • 2018-12-02
      • 2014-06-10
      • 1970-01-01
      相关资源
      最近更新 更多