ios – 在cocoapods Podspec中定义自定义模块映射文件

我制作了一个自定义模块映射文件来处理 swift项目中的libxml导入. (非模块化包括错误)

如果我手动完成它会很好用,但当我尝试从一个包含来自此自定义模块的导入的简单项目中删除lint时,cocoapods将无法找到/解析该模块.

我尝试了s.module_map =“module / module.modulemap”

core.xcconfig = { ‘HEADER_SEARCH_PATHS’ => ‘$(SDKROOT)/usr/include/libxml2 $(SRCROOT)/module $(SDKROOT)/usr/include/libresolv’,
‘OTHER_LDFLAGS’ => ‘”-lxml2″‘,‘CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES’ => ‘YES’,‘ENABLE_BITCODE’ => ‘NO’,“SWIFT_INCLUDE_PATHS” => “$(SRCROOT)/module”}

任何帮助,将不胜感激.

解决方法

我设法通过设置pod_target_xcconfig属性解决此问题.完整的部分看起来像这样:
s.preserve_path = 'module/module.modulemap'
s.module_map = 'module/module.modulemap'

core.pod_target_xcconfig = { 'HEADER_SEARCH_PATHS' => '$(PODS_ROOT)/mypod/module' }
core.xcconfig = { 'HEADER_SEARCH_PATHS' => '$(SDKROOT)/usr/include/libxml2 $(PODS_ROOT)/mypod/module' }

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...