Nimble: CwlPreconditionTesting is not found when use Nimble with Cocoapods

Created on 11 Dec 2017  ·  12Comments  ·  Source: Quick/Nimble

  • [x] I have read CONTRIBUTING and have done my best to follow them.

What did you do?

I run a test on CI and I have a compilation issue.
I have add this to the pod file.

   pod 'Nimble', '~> 7.0.0'
   pod 'CwlPreconditionTesting', :git => 'https://github.com/mattgallagher/CwlPreconditionTesting.git'
   pod 'CwlCatchException', :git => 'https://github.com/mattgallagher/CwlCatchException.git'

What did you expect to happen?

My test to pass

What actually happened instead?

Testing failed:
    'CwlPreconditionTesting.h' file not found
    Could not build Objective-C module 'Nimble'
** TEST FAILED **

Environment

List the software versions you're using:

Project that demonstrates the issue

Please link to a project we can download that reproduces the issue. Feel free
to delete this section if it's not relevant to the issue (eg - feature request).

The project should be short, self-contained, and correct example.

Most helpful comment

Make sure your .gitignore doesn't contain Carthage.

All 12 comments

I also see same error (using cocoapods). It will work if I change the version to 7.0.2.

Could you please try with removing pod 'CwlPreconditionTesting' and pod 'CwlCatchException'? Those are embedded in Nimble so you don't need to include them manually.

I did include them because it wasn't working.

This is broken for me too.

Make sure your .gitignore doesn't contain Carthage.

Removing Carthage from my .gitignore had no effect for me.

Closing this due to inactivity.

We are using checked in pods and somehow ended up with Carthage in the .gitignore, so yeah that was making sure that the Carthage/ subdirectory in Nimble wasn't ending up in the checkout.

To solve this problem, I removed use_frameworks! from my Podfile.

I've got the same issue and had Carthage folder in my .gitignore file. To fix the issue and still have possibility to ignore Carthage folder I had to add !Pods/Nimble/Carthage/ to it.

You could/should use /Carthage over Carthage for .gitignore entry to just ignore Carthage dir in your repository root.

我没有修改ignore文件, 而是在Jenkins构建机初始化阶段, 加了一部pod install --verbose --no-repo-update, 当然如果Pods文件夹整个忽略了, 也就不会有这个问题了

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ikesyo picture ikesyo  ·  3Comments

nikolaykasyanov picture nikolaykasyanov  ·  9Comments

sreddy100 picture sreddy100  ·  4Comments

kleiberjp picture kleiberjp  ·  4Comments

pavel-primachek picture pavel-primachek  ·  3Comments