首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译我的程序时,在系统更新后来自QBrush的突然memcopy警告

编译我的程序时,在系统更新后来自QBrush的突然memcopy警告
EN

Stack Overflow用户
提问于 2018-08-05 05:14:43
回答 1查看 387关注 0票数 0

我不知道为什么会发生这种事。但每次我使用我安装的几个Qt版本编译我的应用程序时,我都会收到以下警告:

代码语言:javascript
复制
In file included from /home/Qt5.9.2/5.9.2/gcc_64/include/QtGui/qbrush.h:50,
                 from /home/Qt5.9.2/5.9.2/gcc_64/include/QtGui/qpalette.h:46,
                 from /home/Qt5.9.2/5.9.2/gcc_64/include/QtWidgets/qwidget.h:48,
                 from /home/Qt5.9.2/5.9.2/gcc_64/include/QtWidgets/qdesktopwidget.h:44,
                 from /home/Qt5.9.2/5.9.2/gcc_64/include/QtWidgets/QDesktopWidget:1,
                 from ../src/../../CommonClasses/SQLConn/../../CommonClasses/common.h:6,
                 from ../src/../../CommonClasses/SQLConn/dbinterface.h:10,
                 from ../src/../../EyeExperimenter/src/sslclient/sslclient.h:10,
                 from ../src/../../EyeExperimenter/src/sslclient/ssldbclient.h:4,
                 from ../src/sslwrapper.h:6,
                 from ../src/main.cpp:3:
/home/Qt5.9.2/5.9.2/gcc_64/include/QtGui/qtransform.h: In member function ‘QTransform& QTransform::operator=(QTransform&&)’:
/home/Qt5.9.2/5.9.2/gcc_64/include/QtGui/qtransform.h:81:46: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘class QTransform’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
     { memcpy(this, &other, sizeof(QTransform)); return *this; }
                                              ^
/home/Qt5.9.2/5.9.2/gcc_64/include/QtGui/qtransform.h:57:20: note: ‘class QTransform’ declared here
 class Q_GUI_EXPORT QTransform

谁能告诉我这个警告是什么,更重要的是,我如何摆脱它?根据我所看到的,它与我的系统当前使用的gcc8有关,但是我尝试在QtCreator的Qt工具包配置中更改编译器,但仍然出现警告...

EN

回答 1

Stack Overflow用户

发布于 2018-08-07 00:58:46

您可以使用qmake作为构建系统生成器,然后使用gnu make来实际构建内容- Qt Creator只是在命令行中键入所有内容的快捷方式:)

您可以将相关标志传递给编译器,方法是将以下内容添加到.pro文件中,然后在项目上重新运行qmake (例如,删除build文件夹并再次构建):

代码语言:javascript
复制
QMAKE_CFLAGS_WARN_ON += -Wno-class-memaccess
QMAKE_CXXFLAGS_WARN_ON += -Wno-class-memaccess
QMAKE_CFLAGS += -Wno-class-memaccess
QMAKE_CXXFLAGS += -Wno-class-memaccess
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51689607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档