在Linux上构建Qt 5,适用于Windows(Building Qt 5 on Linux, f

2019-07-17 21:26发布

我想迁移我的Qt应用程序4使用Qt 5来代替。 这些指令失败,由于与如何一些分歧MXE建立的Qt 5,包括它采用模块化的Qt的压缩包,而不是一个大的压缩包的事实。

Answer 1:

这里有完整的说明:

  • 得到它:

     git clone https://github.com/mxe/mxe.git 
  • 安装编译依赖

  • 建5的Qt适用于Windows:

     cd mxe && make qtbase 

    这样将先制作它的依赖和交叉编译工具; 它应该不到一个小时快速机体面的互联网连接。

    由于Qt的5的新的模块化特性,各主要部件的Qt现在是在不同的压缩包。 上面选择的一个, qtbase ,应该给你足够的功能来运行普通的GUI应用,这是所有我需要为我自己的(小鲨鱼)的应用程序。

    如果你想建立所有的Qt 5,而不是,你需要运行make qt5 (而不是make qtbase )。 请注意,这将需要更长的时间才能完成,所以要确保你所需要的额外功能。

  • 获取到您的应用程序的目录,并运行Qt的Makefile生成工具:

     <mxe root>/usr/bin/i686-w64-mingw32.static-qmake-qt5 
  • 建立你的项目:

     make 
  • 你会发现在./release目录的二进制文件:

     wine release/foo.exe 

一些注意事项:

  • 这是对我的64位Debian的8测试,并在课程的窗口。

  • 输出是一个32位的静态可执行文件,这将在64位的Windows很好地工作。

  • 如果你想要一个64位可执行文件,建立Qt的有:

     make MXE_TARGETS=x86_64-w64-mingw32.static qtbase 

    默认MXE_TARGETSi686-w64-mingw32.static



Answer 2:

Git的checkout命令是不正确的。 现在,您可以得到他们的稳定分支或将失败的建筑。

git clone https://github.com/mxe/mxe.git

应该...

git clone -b stable https://github.com/mxe/mxe.git

这本身就修好了我与qtbase建筑,但在完成时不留QT文件夹中的所有问题。 然后QT5目标会失败,隐蔽的错误。 已删除文件夹,签出稳定的,它完美地工作。



Answer 3:

如果你尝试这样做,我很好地工作!

su
mv mxe /opt/mxe
cd /opt/mxe && make


文章来源: Building Qt 5 on Linux, for Windows
标签: qt qt5 mxe