“Include of non-modular header inside framework module” 编译 pod 时
“Include of non-modular header inside framework module” while compiling pod
我正在创建一个使用 RestKit 和其他一些 pods 的 pod。
当我使用命令编译 Pod 时:
pod repo push myCocoapodsRepo myPodspec.podspec --allow-warnings --verbose
我遇到的第一个错误是
In file included from /var/folders/mx/cg3cmvh14wl2f3mnq0sc_cd00000gn/T/CocoaPods/Lint/Pods/RestKit/Code/ObjectMapping.h:21:
/var/folders/mx/cg3cmvh14wl2f3mnq0sc_cd00000gn/T/CocoaPods/Lint/Pods/RestKit/Code/ObjectMapping/RKObjectMapping.h:23:9: error: include of non-modular header inside framework module 'RestKit.RKObjectMapping' [-Werror,-Wnon-modular-include-in-framework-module]
#import "RKValueTransformers.h"
^
如果我依赖其他 Whosebug 线程来解决此错误,例如
- Swift compiler error: "non-modular header inside framework module"
- Include of non-modular header inside framework module
他们都会说将 CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES
设置为 YES
and/or 将有问题的 header 文件放在 Public
部分而不是 Project
部分,它将解决问题。但对我来说,事实并非如此。这些线程也有共同的 Swift 语言,但我不使用它。我还在用Objective-C,不知道对我的问题有没有影响
我不明白错误是什么意思,所以我很难解决这个问题。有人有其他解决方案吗?
您应该像这样添加标志 --use-libraries:
pod repo push myCocoapodsRepo myPodspec.podspec --allow-warnings --verbose --use-libraries
我正在创建一个使用 RestKit 和其他一些 pods 的 pod。
当我使用命令编译 Pod 时:
pod repo push myCocoapodsRepo myPodspec.podspec --allow-warnings --verbose
我遇到的第一个错误是
In file included from /var/folders/mx/cg3cmvh14wl2f3mnq0sc_cd00000gn/T/CocoaPods/Lint/Pods/RestKit/Code/ObjectMapping.h:21:
/var/folders/mx/cg3cmvh14wl2f3mnq0sc_cd00000gn/T/CocoaPods/Lint/Pods/RestKit/Code/ObjectMapping/RKObjectMapping.h:23:9: error: include of non-modular header inside framework module 'RestKit.RKObjectMapping' [-Werror,-Wnon-modular-include-in-framework-module]
#import "RKValueTransformers.h"
^
如果我依赖其他 Whosebug 线程来解决此错误,例如
- Swift compiler error: "non-modular header inside framework module"
- Include of non-modular header inside framework module
他们都会说将 CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES
设置为 YES
and/or 将有问题的 header 文件放在 Public
部分而不是 Project
部分,它将解决问题。但对我来说,事实并非如此。这些线程也有共同的 Swift 语言,但我不使用它。我还在用Objective-C,不知道对我的问题有没有影响
我不明白错误是什么意思,所以我很难解决这个问题。有人有其他解决方案吗?
您应该像这样添加标志 --use-libraries:
pod repo push myCocoapodsRepo myPodspec.podspec --allow-warnings --verbose --use-libraries