我试图使用CocoaPods和Carthage在我的Cocoa Touch Framework中添加一些Icon-font项目,但不断获得 ld: framework not found SomeIconFont
我试过的事情:
-
将最新的
.framework
拖放到Linked Framework和Libraries中 -
尝试在链接二进制与库阶段之前的构建阶段中添加具有目标框架的复制文件
-
已使用
$(SRCROOT)/Carthage/Build/iOS/SomeIconFont.framework
为框架添加了carthage copy-frameworks
运行脚本 -
已在项目级别和目标两者上将“仅构建活动体系结构”设置为“是”
-
两者的架构都是标准的
-
已将两者的框架搜索路径,Project和Target分别设置为
$(SRCROOT)/Carthage/Build/iOS
和$(PROJECT_DIR)/Carthage/Build/iOS
-
已尝试清理,重置DerivedData
我的最后选择是动物牺牲和水下手持,但当然,它们仅次于重新安装Xcode及其几个GB . 我只是发布这个问题,因为老实说,在过去的48小时里完全被这个问题打败了
1 回答
在两个艰苦的日子结束时(我已经救了你!),我终于设法解决了这个问题:
在 Framework Search Paths 下方,您将看到 Debug 和 Release ,并且两者都是 Any Architecture | Any SDK .
简单地将 Any Architecture | Any SDK 设置为
$(inherited)
为我解决了这个问题 . 当然,如果你没有像OP中所示将顶级设置为$(SRCROOT)/...
,这将无效,因为它只会模仿父元素的值!为什么这不是你在网上找到的其他一百个问题/博客中的一个的重复:写这篇文章的几乎所有相关帖子都是针对应用程序的,而不是动态库/ Cocoa Touch Framework