In Windows 10, the “Enable Plugin Copy Step” option works like I think it should - it builds the binaries to the project’s primary “Binary Location”, and then it copies (not moves) them to the plug-in folders.
On Mac, however, the behavior is inconsistent:
If the project build folder is empty: It will write the plug-ins to the plug-in folders, but then only put aliases to those plug-in files in the project build folder.
If the project build folder has actual plug-in builds in it (e.g. from first building a project with the “Enable Plugin Copy Step” option OFF): It won’t update or touch the plug-in builds. It does write a new shared library (
.a file) there, but the new plug-in files are written only to the plug-in folders, not to the project build folder.
Is this expected behavior or a bug?
We just ran into an issue because of this behaviour as well.
Let’s say your build process builds ReleaseWithTests and Release.
Then the you copy the plugin out of the ReleaseWithTests folder and run your tests – it fails because the link is actually pointing to the Release version. Or if you build in the other order it’s worse and now you are shipping the ReleaseWithTests version (or maybe even Debug if your build process builds that as well).
It seems fundamentally broken if the build in Release folder isn’t actually the Release build, but whatever build was done most recently.
I just ran into that bug.
The “copy step” should copy but doesn’t.
Any chance to get that fixed, or is it more complicated than it seems?
does Xcode have permission to copy to where the copy step is supposed to copy to?