3rd party library sub-project support

I often use open source libraries in my iOS apps. The libraries are usually added as a git submodule and as a subproject in the app's xcode project. The problem is that AppCode doesn't index the source of the library and is also confused about where to find the header files. Any usages of the nested library's code looks like errors to AppCode and makes it almost unusable. Any workarounds or plans to support this common use case?

Michael

2 comments

Here are a few more details.

1) I noticed that when I expand the subproject in AppCode, the 'Classes' and 'Tests' groups of the library are red and have a '?' icon next to them instead of the usual folder icon.

2) I think AppCode simply can't find the public headers of a library subproject. The library copies its public headers as a final build step which means they end up in '$(BUILT_PRODUCTS_DIR)/include'. I tried adding that path to the project's 'User Header Search Path'. This path is obviously already on the compile command, but I was hoping that it might trick AppCode into resolving the imports correctly, but unfortunately it had no effect.

3) This isn't a problem when using RestKit as a subproject because it has scripts to explicity dump its build output in the 'RestKit/build' in the source tree. Projects that rely on the "DerivedData" location for build output aren't correctly consumed by AppCode.

Would love some help as I hate using XCode, but I'm stuck with it for the moment.

Thanks,

Michael

1

Please sign in to leave a comment.