• QT5.7静态编译(使用VS2013与VS2015编译,XP可用,有详细configure脚本。VS下Qt插件的配置。编译选项加上-mp可以开启多线程编译,编译速度提高2倍以上)


    http://blog.csdn.net/u011964923/article/details/52886908

    configure -confirm-license -opensource -platform win32-msvc2015 -developer-build -shared -target xp -prefix "D:Qt5.7.0-shared-win32-vs2015-xp" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtquickcontrols -skip qtquickcontrols2 -skip qtsensors -no-directwrite

    为了解决的问题:QT动态编译得到的exe可执行文件,只能在本机运行。若直接复制到一台未安装QT的计算机上,肯定是无法运行的。


    解决方法一:请参照我的另一篇博客QT程序 如何在未安装QT的电脑上运行,该方法仍然采用动态编译的方式,只是采用QT提供的windeployqt命令将可执行文件所需的动态链接库全给扒出来,然后放到可执行文件同一目录中,便可以拿到另外一台计算机上执行了。 缺点是:动态链接库太多,40MBit左右。


    本文提供解决方法二:静态编译的方式:

    本文假设您已成功安装 qt-opensource-windows-x86-msvc2013_64-5.7.0.exe 和 qt-vs-addin-1.25.exe(均可以在官网下载到)


    【步骤1】在计算机上安装Python库和perl库(因为后续的静态编译需要用到这两种语言),可以在命令行敲击“python”和“perl -v”检查是否安装成功。


    【步骤2】下载qt-everyshere-opensource-src-5.7.0-beta.zip 解压到 C:FreqUsedQtqt-everywhere-opensource-src-5.7.0-beta(按照自己习惯的路径解压)


    【步骤3】打开 C:FreqUsedQtqt-everywhere-opensource-src-5.7.0-betaqtbasemkspecscommonmsvc-desktop.conf

    QMAKE_CFLAGS_RELEASE = -O2 -MD
    QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
    QMAKE_CFLAGS_DEBUG = -Zi -MDd


    改为

    QMAKE_CFLAGS_RELEASE = -O2 -MT
    QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi
    QMAKE_CFLAGS_DEBUG = -Zi -MTd

    即将MD改成MT,MDd改成MTd。动态改成静态


    【步骤4】打开Visual Studio Tools中的 VS2013 开发人员命令提示,cd进入 C:FreqUsedQtqt-everywhere-opensource-src-5.7.0-beta

    输入指令:

    configure -confirm-license -opensource -platform win32-msvc2013 -debug-and-release -static -prefix "C:FreqUsedQt-static-vs2013" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples
    configure -confirm-license -opensource -platform win32-msvc2015 -debug-and-release -static -prefix "D:qt5-x86-static-vs2015" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples


    回车等待1分钟左右

    其中,"C:FreqUsedQt-static-vs2013"是我接下来把静态编译版本qt的安装目录


    (这一步真是血淋淋的教训,我按照网上QT5.4.0的配置方法,区别为QT5.4.0配置代码最后有“-skip qtwebkit”。到了Qt5.7.0版本,这个qtwebkit早就被拿掉了,所以要去掉“-skip qtwebkit”。就因为这个,浪费了我一整天,时间就是金钱啊)


    【步骤5】1分钟之后,命令行会提醒你nmake,那么我们键入nmake命令并回车,等待2至3个小时后,再输入nmake install,便可以发现"C:FreqUsedQt-static-vs2013"这个目录正在安装文件,等带10分钟后,安装完毕。


    【Qt Creator下的配置】 在工具->选项中...添加QT Version和构建套件,然后建立工程即可。


    【VS下Qt插件的配置】网上的配置方法太过复杂,且成功率很低。让我纠结了一个下午,突然灵光一现,下面是我的方法:

    1、先利用Qt Creator建立一个static版本的工程,设计好界面之后,编译成功。

    2、将静态编译debug或release文件夹下的 “工程名_plugin_import.cpp”,复制到工程的main文件同一目录下

    3、用VS的QT5打开刚才建立的工程,qt setting设置为静态版本

    4、编译成功

  • 相关阅读:
    正则表达式解决身份证号码和手机号
    redis:集群配置
    linux:NFS
    xshell提示必须安装最新的更新
    linux:ssh远程调用tomcat脚本时候出错
    linux:scp从入门到刚入门
    linux:SSH最简单教程
    nginx;keepalived配置出现主主的解决方法(脑裂问题)
    (4)事件处理——(4)网页上的多个脚本(Multiple scripts on one page)
    [php]应用控制器(一)
  • 原文地址:https://www.cnblogs.com/findumars/p/6021518.html
Copyright © 2020-2023  润新知