• Qt5.8 在windows下mingw静态编译


    官方对编译一些条件介绍:https://doc.qt.io/qt-5/windows-requirements.html

    在默认情况下,用QtCreator编译程序时,使用的是动态编译。编译好的程序在运行时需要另外加上相应的Qt库文件,一大堆dll文件。如果想将生成的程序连同所需要的库一起完整地打包成一个可执行程序,那就需要使用静态编译。

    在win7 x64 静态编译制作过程如下:

    1. 安装Qt,全部勾选安装.   qt-opensource-windows-x86-mingw530-5.8.0.exe

    2. 安装Perl, 下载地址:https://www.activestate.com/activeperl/downloads

      安装目录:D:ProgramFilesPerl64

      环境变量安装过程自动添加的,如果没有添加,手动添加: 

        D:ProgramFilesPerl64sitein;

        D:ProgramFilesPerl64in;

    3. 安装Python,Windows x86 executable installer 下载地址: https://www.python.org/downloads/

        安装过程记得勾选添加PATH环境变量。

        安装目录:D:ProgramFilesPython36-32

       环境变量安装过程自动添加的,如果没有添加,手动添加: 

        D:ProgramFilesPython36-32Scripts;

        D:ProgramFilesPython36-32;

    4.打开Qt 5.8 for Desktop (MinGW 5.3.0 32 bit)

         

        4.1 输入以下命令检查gcc编译器配置是否正确

              gcc -v

        4.2  输入以下命令检查perl解释器配置是否正确

               perl -v

        4.3 输入以下命令检查python配置是否正确

              python

          按ctrl+z回车,退出python

    5.在D:ProgramFilesQtQt5805.8新建一个文件夹mingw53_32_static,

       

       切换到Qt的源码目录

       cd D:ProgramFilesQtQt5805.8Src  

       运行命令:    

    configure.bat -confirm-license -opensource -platform win32-g++ -debug-and-release -static -prefix "D:ProgramFilesQtQt5805.8mingw53_32_static" -qt-sqlite -qt-zlib -qt-libjpeg -qt-libpng -qt-xcb -qt-xkbcommon -qt-freetype -qt-pcre -qt-harfbuzz -opengl desktop -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebengine -skip qtwebview -skip qt3d


     注:这里配置的时候,跳过了qtwebengine、qtwebview、qt3d,如果需要这些模块可以去掉skip

     

    6.编译(大概需要3小时左右)

      mingw32-make -j2

       注:本处为2个线程编译,电脑好的可以开更多的线程,编译速度也更快

    7.安装(需要30分钟左右,硬盘好的话会快点)

        mingw32-make install

    8.新增静态编译

        打开Qt Creator -> 工具 -> 选项 -> 构建和运行 -> Qt Versions

         添加版本后,点击应用。

       

       

        构建套件:克隆一个,修改,注意Qt版本一定要记得选对。修改后,点击应用

      

     

    9.配置编译器

       记事本打开D:ProgramFilesQtQt5805.8mingw53_32_staticmkspecswin32-g++qmake.conf

       添加 一行QMAKE_LFLAGS = -static,修改 QMAKE_LFLAGS_DLL其值为-static

     

      

     10.新建工程选择 静态编译套件,编译出来就可以直接运行exe程序了。编译过程很慢,发布的时候最好选用release的,release的程序体积比debug小很多。

     

  • 相关阅读:
    本地计算机 上的 Redis Server 服务启动后停止
    RabbitMQ 命令行
    mysql ORDER BY 中文出现错误问题
    使用javascript纯前端导出excel
    软件测试概念学习
    excel控件只为简单写入数据表--github找到ExcelUtil笔记
    快速创建Spring web项目
    PQGrid商业化的表格组件
    mybatis传入参数为0被误认为是空字符串的解决方法
    MyBatis like报错
  • 原文地址:https://www.cnblogs.com/ike_li/p/6860089.html
Copyright © 2020-2023  润新知