zoukankan      html  css  js  c++  java
  • QT程序探测所需DLL,静态连接和打包

    1. 如果没有使用静态编译的QT库的话,那么无论VS还是MinGW编译出来的exe程序都要带上一堆DLL,而且必须是准确版本的DLL,对于VS好像还有一个Microsoft.VC90.CRT.manifest的问题(目前还没搞懂)。探测所需DLL可以用以下三个工具之一:

    MS Dependence
    Dependency Walker
    Process Explorer

    其中Process Explorer最好,因为它准确的列出了当前运行程序需要的DLL的准确路径。前两个只是列出名字,可是一个机子上有许多同名DLL,到底哪个正确呢?所以就要靠这个工具了,然后一一拷贝到同一目录下即可。

    2. 我在WIN7 x64下使用VS2008 SP1编译的程序不能直接在XP下运行,必须安装vcredist_x86.exe,这样太麻烦了,难道在x64下跑还要再带一个文件?貌似有办法:VS2008 编译的程序 Release 版本不装 vcredist_x86.exe 也能跑的解决方法:

    http://hi.baidu.com/pass86/item/9cb37795d6d2f2f028164726

    3. 打包工具:这里选用Enigma Virtual Box,待续。

    -----------------------------------------------------------------

    总结:最好既静态编译QT,不仅仅是为了减小文件,更主要是为了避免客户那里库文件混乱从而无法使用;其次是静态编译项目本身,避免携带vcredist_x86.exe。最后还可以打包,那就完美啦~

  • 相关阅读:
    MVC 网页制作
    Mvc 中国直辖市下拉列表(三级联动)
    MVC 登陆注册页面
    MVC 数据库增删改查(Razor)视图(2)
    MVC 数据库增删改查(Razor)方法(1)和数据库
    winform网页抓取邮箱单发群发并有附件
    winform截取网页邮箱
    winform 图标表chart
    winform图片读取存储于数据库SQL
    winform计算器
  • 原文地址:https://www.cnblogs.com/findumars/p/4082624.html
Copyright © 2011-2022 走看看