Cocoapods - No Such Module 'module' (for any modules)

不羁的心 提交于 2019-12-10 11:35:21

问题


It's time to swallow my pride and give this up after over a week of debugging. To preface, before someone marks this question as a duplicate, I realize that this is a common question on SO. However, I've read practically every similar question and seemingly tried variations on every given answer all to no avail. While this question may look daunting, it's really not. I've simply chosen to provide a fully exhaustive list of things that may or may not be relevant in the spirit of being thorough.

Here is the root of my problem:

No such module 'ParseUI'

error message

The discrepancy is that as far as I understand the framework (and all "no such module" frameworks) does exist in some capacity, as shown below when I build the project and it goes through the compiling stages:

compiling the framework

For context, this is not an error that is specific to ParseUI in file LocalPost.swift (error screenshot above) by any means. If I comment out that import statement in that file, it just throws the error the next place it finds an import for any framework installed via Cocoapods. It only throws this one error because it's the first import statement found in the first line of said file within the "compile sources" section of my target's build phases as shown below:

app target's build phase order

app target's compiled sources

That being said, I will focus on the missing ParseUI module for simplicity's sake.

TRIED & FAILED SOLUTION ATTEMPT - Rearranging the build phase order

Now I'll show where this framework seems to exists along with the steps I took:

First off, these frameworks are installed through cocoapods. Here is my Podfile:

Podfile

After running pod install, everything goes smooth. ParseUI is located in the following places within my project:

Within the project's "Frameworks" directory (full path shown on right)

*TRIED & FAILED SOLUTION ATTEMPT - Changing the location dropdown to every other option

app target's linked libraries

Next, I'll show some build settings that I feel are relevant starting with the framework search paths. Since none of the changes I made for this setting seemed to make any difference (as you'll see below) they are currently blank:

Project framework search paths

Target framework search paths

Target's other linker flags

*TRIED & FAILED SOLUTION ATTEMPT - Changing the framework search paths for both the project and target's build settings including the following:

  • $(inherited) (recursive and non-recursive)
  • $(PROJECT_DIR) (recursive and non-recursive)
  • $(PROJECT_DIR)/Frameworks (recursive and non-recursive)
  • $(SRCROOT) (recursive and non-recursive)
  • $(SRCROOT)/Frameworks (recursive and non-recursive)
  • combinations of the above

Now for configurations within the Pods project. Here is where the framework lies within the Pods directory:

The Pod's directory

The framework target's path (full path shown on right)

The pod's "Product" directory in the navigator

Finally here is the Pod's project search paths build setting:

Project level framework search paths

That concludes all of the relevant UI for me to show. A couple other things I should note:

  • Yes, I'm using MyProject.xcworkspace
  • I could clean/clear derived data/restart my project with my eyes closed from the number of times I've tried those steps.
  • I've even removed Pods entirely and reinstalled it via cocoapods on a clean slate

The versions I am using are:

  • Cocoapods v1.0.1
  • Xcode v7.3.1
  • Swift v2.2
  • Ruby v2.3.1 (if that's Cocoapod-relevant?)

If you've gotten this far, thank you for even taking the time to follow along. If you have a suggestion for any step I should take, even better. I am at my wits end. I'll amend this question with any request information if need be.


回答1:


Make sure your Pods subproject has "Build Active Architecture Only" set to NO.



来源:https://stackoverflow.com/questions/39048078/cocoapods-no-such-module-module-for-any-modules

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!