1. 在X86架构的CPU上编译是ok的,没有警告,没有报错;然后移植到ARM64架构上编译时候,就报错了。
2. C++11要求,当字符串跟变量连接的时候,必须增加一个空格才行。因此解决方案有2个:
(1) Makefile文件明确告知编译方式采用C++98:CFLAGS += -std=c++98
(2)采用控制宏方式:
#if __cplusplus < 201103L
#define STOR_ERROR(fmt, args...) hlog_format(HLOG_LEVEL_ERROR, "Storage", "%20s[%04d]:"fmt, __FUNCTION__,__LINE__, ##args)<