最近在做课题,需要用VS+PCL+Qt+VTK写一个软件,要进行程序打包,好不容易打包成功,就记录一下。
动态库文件
VS
在VS安装目录下找到需要的库文件
我的路径是:F:\VS2015\VC\redist\x64(64位操作系统选择X64,32位的在X86)
将五个文件里面的所有.dll文件放到自己的exe文件目录下
PCL
在PCL安装目录下找到需要的库文件
我的路径是:C:\PCL\PCL1.8.1\bin
将文件夹里面所有的.dll文件放到exe目录下
VTK
将自己用CMake编译的VTK文件下bin文件里面的dll文件放到exe目录下
我的路径是:C:\Program Files\VTK\bin
Qt
3.在生成的时候用QT的命令行工具,用管理员身份打开(Win10系统可自己搜索Qt命令行工具,一定要选对自己对应VS版本下的)。
4.跳转到要打包的文件夹目录下,执行:windeployqt xxx.exe 其中XXX为前面Release生成的.exe文件名
5.成功执行后,再目录下会打包进一堆库文件。
6.qt的动态库只用到了其中的几个,所在地址为F:\Qt\5.9.4\msvc2015_64\bin。用到的几个Qt动态库文件为:Qt5Cored.dll、Qt5Guid.dll、Qt5Networkd.dll、Qt5Widgetsd.dll,要是没有的话手动加进去。
最后需要说明
如果在运行exe文件时提示缺少XXX.dll,就把这个动态链接库找到,放到exe目录下就可以了
我的缺少过flann.dll和OpenNI2.dll,我在PCL文件夹下直接搜索找到后,放到exe目录下,程序便可以运行。