公司调试Qt源码,编译Qt4.7.1后,发现放在版本中启动软件,提示无法定位程序库输入:
[email protected]@[email protected] 很奇怪。对比公司版本中的QtCore4.dll和编译出来的QtCore4.dll 发现大小不一致,使用Dependency walker 导出txt 对比发现Qtcore4.dll导出类和函数有众多差异!
打开对应源文件:
大致明白原因是没有导出符号,打开工程配置,果然没有添加Q_AUTOTEST_EXPORT的导出。全局搜索“Q_AUTOTEST_EXPORT”,找到了下面这段话:
所以看到这里,答案显而易见:
在VS工程预处理器添加:QT_BUILD_INTERNAL 问题得到解决