Xcode Subprojects not recognized

I was trying to add a subproject to my project using the ProJucer, but it has no effect at all and fails silently. Am i missing something here ?

Well, how are you filling the Projucer field in? Could you provide the subproject that’s failing to be embedded? What libraries or frameworks does the embedded project produce?

The subproject produces a static library, it’s generated with the CMake Xcode project generator.

I just entered the relative path (relative to the generated main Xcode project, like anything else in the ProJucer) into the “Xcode Subprojects” field in the iOS exporter menu. It points to the .xcodeproj file.

The subproject builds fine on its own, and if i drag it directly into xcode, it works just as well.

If you compile the Projucer yourself you should be able to step through the code using the debugger to find out why it’s not working. Add a breakpoint in addSubprojects() in jucer_ProjectExport_Xcode.h, then resave the Projucer project.

It’s working OK for me, but it’s also a relatively new addition so maybe there’s a particular configuration of a subproject that misbehaves.

I just came across this. The Xcode Subproject folder is in fact, relative to the .jucer project. This is a bit confusing IMO, and should be stated in the help bubble in Projucer.

I also found the Xcode project needs to be closed and reopened to see the subproject appear.

1 Like

Failing to locate a subproject in “Xcode Subprojects” causes Projucer to quietly emit a log message in debug mode. But it doesn’t actually stop the Projucer build, which it should. Currently there is no way for a Projucer author to determine whether Xcode Subprojects paths are correct, until you open the Xcode project and mysteriously there are no subprojects present.

As stated above, Xcode Subproject paths are relative to the .jucer file, not to the output Xcode project.

I too had to pick apart the Projucer source code due to deficient help authoring. Please write proper and complete documentation for Projucer fields, including this particular one, ROLI; and make failing to find a subproject an error that stops project compilation.

Paid customer here, if that matters.

2 Likes

+1 for this

eg. “Company Copyright” → “Your company copyright, which will be added to the properties of the binary where possible.”

Is this supposed to be a copyright year? Some of these help bubbles literally just state what’s more or less obvious from the title, without really adding anything.

1 Like

Just getting around to looking at this.

I think having the path relative to the project is a mistake. We’ll fix that, update the breaking changes doc, and make the help bubble more helpful.

We can’t, however, stop a project saving if the subproject isn’t there. You may be saving a project on a different machine to the one you are building on, so we can’t test for the presence of files at save-time.

1 Like
1 Like