Cocoapods needs to be updated every time on different computers using Dropbox Sync for bolt assembly

My setup:

  • Xcode project inside Dropbox folder
  • Installed Cocoapods
  • There is a paragraph in my subframe requiring the Bolts frame

Every time I load the workspace after editing it from another computer, Xcode complains about the duplicate interface definition for the "BFAppLink" class (which is from the Bolts framework). This was fixed with a "module update".

Any ideas?

+3


source to share


3 answers


I faced the same problem with Dropbox and Parse pod. I researched and found that CocoaPods keeps symlinks in your headers. / Pods / Headers for some reason. Dropbox is actually copying files to another computer, rather than just copying a symbolic link.

When compiling on your second machine, there are 2 copies of the .h files, so Xcode complains and won't compile until you run pod install (which will replace the duplicate .h files with symlinks as it should be). But then your other computers, which are compiled fine, will replace their symlinks with duplicate header files.



The way I found this was to add / Pods / Headers to the selective sync in Dropbox so that they would not sync. Then run pod install on all of your computers and they should be able to compile.

I hope this helped

+9


source


The pod update is likely rewriting your Xcode project and getting rid of importing duplicate files. Instead of saving the project to Dropbox, can you save it to a real SCM system like git, perhaps using a GitHub or BitBucket service?



+3


source


Here's a little checklist that might solve your problem:

  • Is your entire project copied to Dropbox? Whether your directory is copied /Pods

    , project.xcworkspace

    ?

If you are copying all of the content, such as zipping the entire project and unzipping it on a new computer, you should be able to run the project on any computer with no coopods installed.

  1. Is the bolt frame added via cocoapods? If you have a manual link to the framework, the path may differ from version.

  2. Are you using the same version of cocoapods on all of your machines?

Different versions of cocoapods between machines can cause problems like the one you observed.

$ pod --version

      

As mentioned earlier, consider using bitbucket or github for the control version. SourceTree is a great git client for matching.

0


source







All Articles