Qt编译问题解决

1 篇文章 0 订阅
1 篇文章 0 订阅

Windows下的问题

前提为使用vistual studio进行开发

1.Qt4转Qt5编译问题

1.1碰到各种不是XX中的成员函数

可能是qt4的某个成员函数在qt5中被弃用了
如:

toAcsill() 
方法1:

通过f2进到这个文件中,找到该成员函数, 可能会有注释,表明成员函数被弃用,然后换成那个函数即可

方法2:

googlebing,别问为什么不是百度(懂得都懂),搜索一下这个成员函数,然后看看能替换为哪个。

2.Qt编译不通过

2.1出现意外的文件尾

写完代码有某个地方的;号没加,或者#ifndef没加#endif,反正是有一个地方没结尾,检查代码

2.2lnkll04无法打开X:\X\X.lib

链接库的问题,如果是vs在项目属性中找到链接器,找到输入,更改附加依赖项(找到需要的依赖项添加进去即可)

2.3.lnk2038检测到“_MSC_VER”的不匹配项:值“1600”不匹配值“1800”
方法1

换成旧版本编译器

方法2

重新编译导入库的静态链接,然后在重新编译

2.4warning C4273:XX:XX:dll链接不一致

查看导出dll的宏定义(具体解决办法看宏定义文件,要么google搜索)
一般在构建dll时候通过构建命令(/D)中指定一个宏,让函数声明使用dllexport而不是dllimport,但是未定义宏的时候生成,它会生成为dllimport的函数
我的问题为不需要导出dLL文件,所以把类名的宏定义去掉就好了

2.5error Lnk2019:无法解析的外部符号
方法1

有声明的函数没有进行实现

方法2

如果是生成一个dll,那查看当前错误的类,添加构建d1l的宏命令

Linux下的问题

1.编译不通过

1.1如果出现无法找到libstdc++.so.6文件

创建项目完成后,在QtCreator左边项目一栏中将shadow build先取消选择.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值