根据网上的资料,发布static版已经成功了,由于我用的的一个dll文件依然依赖qt的核心dll文件,所以编译成static还是需要把qt的几个dll文件打包进去,deploy static版本没啥意义了。今天尝试发布动态链接库版的,结果遇到了了问题。
程序运行目录下建立了imageformats 和codecs目录,并把相关的plugin dll文件拷贝进去,程序运行依然没法显示jpg图片,中文乱码,显然plugin没起作用,搜遍网络和qt助手,也没能把问题解决。使用了/QCoreApplication::addLibraryPath(QCoreApplication::applicationDirPath()+"/plugins");也不见效。
按照qt助手推荐的Dependency Walker工具查看我的exe文件依赖的dll,没发现问题。使用360safe的进程查看器发现,exe文件还依赖于libgcc_s_dw2-1.dll,从qt的bin目录下把这个文件拷贝过来,程序运行正常了。
我推测,Qt4.6.0的plugin需要这个dll文件启动。
类似的资料哪里去查呢?