使用cmake编程出现的narrowing conversion问题,想请教一下

selfpaper 2017-04-10 04:09:40
最近刚开始用cmake来写东西,
在尝试把一段Qmake程序转变为Cmake程序时出现了/home/turtlebot/comfunccmake/PortSend.cpp:10: error: narrowing conversion of ‘135’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
char clstr[] = {0x87};
这种问题,我记得本来用Qt编写时碰到这种问题一般是使用添加c++11编译器来解决的
结果这会发现在cmake里添加add_compile_options(-std=c++11)和add_definitions(-Dlinux=1)好像并没起作用……
原本的Qt程序的pro文件内容如下
QT += core
QT -= gui

contains(QT_VERSION, ^5\\..*\\..*): QT += widgets

TARGET = ComFunc
TEMPLATE = app

include(src/qextserialport.pri)

SOURCES += \
main.cpp \
PortSend.cpp

HEADERS += \
PortSend.h
原文件中包含的pri文件里包含一段
linux*{
!qesp_linux_udev:DEFINES += QESP_NO_UDEV
qesp_linux_udev: LIBS += -ludev
}

macx:LIBS += -framework IOKit -framework CoreFoundation
win32:LIBS += -lsetupapi -ladvapi32 -luser32

# moc doesn't detect Q_OS_LINUX correctly, so add this to make it work
linux*:DEFINES += __linux__
我在想是由于什么原因才导致了这个问题,如果问题不全的话我会继续补充……麻烦了
...全文
1503 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧