' LOG_INFO'移动项目到快速桥接项目后宏重新定义警告

时间:2014-09-24 18:12:59

标签: objective-c swift xcode6 objective-c-swift-bridge cocoalumberjack

我收到了几个警告:

Swift compiler warning:
CompileSwiftSources normal arm64 com.apple.xcode.tools.swift.compiler

/Myfolder/Pods/Headers/CocoaLumberjack/DDLog.h:176:9: 'LOG_INFO' macro redefined
/Myfolder/Pods/Headers/CocoaLumberjack/DDLog.h:177:9: 'LOG_DEBUG' macro redefined

警告在Projet-Bridging-Header.h中抱怨DDLog.h

#import "DDLog.h"
#import "DDASLLogger.h"
#import "DDTTYLogger.h"

如何解决这个问题?

1 个答案:

答案 0 :(得分:5)

问题是Swift自动导入syslog.h,它定义了具有相同名称的常量。

如果您的Swift代码不需要syslog常量,那么您应该能够在导入DDLog.h之前取消定义它们以消除警告。

#undef LOG_INFO
#undef LOG_DEBUG
#import "DDlog.h"