如何使用不同的构建配置设置Xcode项目依赖项?
我有一个Xcode 7.3工作区,有三个项目,App,FrameworkA和FrameworkB.每个项目都有一个目标.这是iOS,因此框架目标是Cocoa Touch Frameworks,这意味着包含动态链接共享库的框架.
应用程序依赖于依赖于框架B的框架A.这些依赖关系正在工作,只要A正确链接到B的构建产品,并且App正确链接并嵌入框架A和B(因为您不能有一个框架嵌入另一个框架,似乎应用程序包需要链接和嵌入直接和传递依赖.) 但这是我的问题.框架A和B具有通常的构建配置,即调试和发布. App有一个额外的构建配置LocalRelease,它由Run构建操作触发,用于构建优化的构建(如Release),但代码用开发者身份(如Debug)签名. 当我尝试使用这个LocalRelease构建配置构建App时,这打破了构建,因为它打破了框架A和B的依赖关系.我相信这是因为这些框架没有LocalRelease构建配置,所以Xcode从不将他们的构建产品放入LocalRelease-iphoneos文件夹,与App一样. 所以我的狭隘问题是,如何配置构建设置,以便具有非标准构建配置名称的项目(如LocalRelease)可以依赖于仅使用标准构建配置名称的其他项目?我希望有一种简单的方法可以做到这一点,不需要添加脚本或xcconfig文件,但如果有必要,我很乐意理解为什么. 我的更广泛的问题是,引入额外的构建配置通常是一个坏主意,因为它们不允许共享工作区中项目之间的依赖项的平滑交互?我被引导定义第三个配置,因为我想要一个优化的本地构建,我不想定义一个新的方案,我希望构建类型的选择由各种构建操作(运行,配置文件,发布)表示单一计划. 但也许这是错误的做法.只要构建配置名称驱动构建产品目录路径,并且依赖项目需要在共享目录中找到彼此的构建产品,似乎向项目引入非标准构建配置名称将破坏与之的互操作依赖于其他项目. 解决方法
我向Apple提出了一份关于此的开发者技术支持票,并与WWDC的Xcode工程师交谈.
回答我自己的问题
答:无法做到.
答:是的,这是一个坏主意. 因此,创建一个新的命名构建配置并不是我想要做的事情的明智方法.不幸的是,似乎“最简单”的解决方案是拥抱xcconfig文件并手动更改配置文件以进行此类操作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |