在CocoaLumberjack 问题 #778中,当CocoaLumberjack
作为动态框架链接时,行#import "DDLogMacros.h"
inCocoaLumberjack.h
没有任何效果。因此,LOG_ASYNC_ENABLED
(在 中定义DDLogMacros.h
)是未定义的。
有人能解释一下Xcode模块预处理规则的机制吗?预处理器似乎没有“预处理”模块中的标头。
在CocoaLumberjack 问题 #778中,当CocoaLumberjack
作为动态框架链接时,行#import "DDLogMacros.h"
inCocoaLumberjack.h
没有任何效果。因此,LOG_ASYNC_ENABLED
(在 中定义DDLogMacros.h
)是未定义的。
有人能解释一下Xcode模块预处理规则的机制吗?预处理器似乎没有“预处理”模块中的标头。
我不清楚预处理规则,但添加
#import <CocoaLumberJack/DDLog+LOGV.h>
可以处理。
在 中CocoaLumberjack-umbrella.h
,顺序如下:
#import "DDLog+LOGV.h"
#import "DDLog.h"
#import "DDLogMacros.h"
如果我像这样更改顺序也没关系:
#import "DDLogMacros.h"
#import "DDLog+LOGV.h"
#import "DDLog.h"
在DDLog+LOGV.h
也定义LOG_ASYNC_ENABLED
中,我猜想中的顺序CocoaLumberjack-umbrella.h
会影响宏