Mono嵌入qt 5.3应用程序

时间:2017-06-22 01:49:27

标签: c++ qt mono

我正在尝试开发Qt 5.3应用程序(Windows上的MinGW32和Linux Raspbian)。我选择了5.3,因为它是Raspbian上的Qt的vanilla版本,而Windows上是MinGW32因为我不想安装Visual Studio 2013.另外,我需要一个WebView,所以为了简单起见,我使用了QtWebkit。

它对应用程序的某些部分使用Mono embeded

但是在Windows上构建时遇到了一些问题:

  • 未定义对`mono_jit_init'
  • 的引用
  • ...

在我的.pro文件中,我添加了这个:

unix {
    CONFIG += link_pkgconfig
    PKGCONFIG += mono-2
}

win32 {
    INCLUDEPATH += "D:\Mono\include\mono-2.0"
    LIBS += -LD:/Mono/lib -lmono-2.0-sgen
}

在raspbian上,它有效,但不适用于Windows。

我在Windows和Raspbian上使用QtCreator。

我错过了什么?感谢。

1 个答案:

答案 0 :(得分:0)

我终于在Windows上找到了一种在MinGW上使用Qt的方法。与Mono一起安装的lib文件是msvc库,与MinGW不兼容,所以我必须生成自己的文件。

  1. mono.defhttps://github.com/mono/mono/blob/master/msvc/mono.def下载到Mono/lib并将其重命名为mono-2.0-sgen.def
  2. 在MinGW命令行中
  3. ,转到Mono/lib目录,然后运行dlltool --output-lib mono-2.0-sgen --dllname mono-2.0-sgen.dll --input-def mono-2.0-sgen.def
  4. 和tadaaa!