-
Notifications
You must be signed in to change notification settings - Fork 189
Add support for VFS-pointed module maps (was: can't find module dependency) #88
Comments
Thanks for including a sample project! My first step is usually to compare the command lines used for In this case, I see a number of differences:
Interestingly, after running |
I looked a little more into the header map differences. Seems like that's not the issue:
|
It looks like the issue is that CocoaPods appears to be generating that and specifying it with |
Started implementing
|
MODULEMAP_FILE
(was: can't find module dependency)
OK, @keith, the |
Oh man thanks for diving into this and getting somewhere with it! I'll definitely compare build logs next time to try and come up with some more info. Let me try this branch now! |
It looks like on our internal project we're on to a new error where we were relying on implicit imports coming from somewhere. I'll add the rest and see what happens next! |
Ok so as far as I can tell, based on your branch, the original issue here is fixed. If this next issue doesn't sound related to you, feel free to close this one and I can open a different one as needed! The next issue I've ran into, which I can't yet tell if it's related, is that using xcodebuild it seems like (for better or worse) many imports are implicitly added. For example we have files like this:
Where we have no explicit
Which will also fail to compile because of a missing import to Let me know if you think this is at all related. |
Ok so after finding all these missing imports, it seems like that issue only applies to the non-app dependencies of our project. I'm not sure exactly what the difference is there, but I only had to modify imports in our first party dependencies, some from CocoaPods and some just custom frameworks in our main project, but none of our main project files. There could be a difference here since the main project is the only place with a bridging header, which might be a slightly more explicit way of polluting the global namespace 😬 |
Hm, very interesting! It would be useful to see a comparison of the |
(I do think it's separate from this issue, though, so I'll make a new issue for it.) |
The module map is copied into the temporary directory, then at build time is copied into the built product.
The module map is copied into the temporary directory, then at build time is copied into the built product.
The module map is copied into the temporary directory, then at build time is copied into the built product.
MODULEMAP_FILE
(was: can't find module dependency)
#113 has the next step for this. |
Awesome. As soon as that branch compiles I'll try it with our project! |
While trying to setup the Lyft project to use
xcbuild
, I ran into some issues with dependencies. We use CocoaPods to integrated 3rd party, and some first party development dependencies. The structure looks something like this:In this simplified example, the issue we're running into is that
zipzap
cannot be found. This leads to errors in theInternal Library
, and stops us from getting anywhere else.I've attempted to reproduce the same issue in a sample project:
test-xcbuild4.zip
In this project if you run (with or without specifying
-executor ninja
):You will see that it fails to build with the error:
(here's the entire build log)
But if you build from within Xcode, everything compiles correctly.
I would love some advice for where to start when I'm facing errors like this, as I'd love to be able to set our project up to benefit from the speed of Ninja! ⚡
Thanks!
The text was updated successfully, but these errors were encountered: