I wanted to make some changes to one of the classes in fxobjects.h (the EnvelopeFollower) in order to add some extra capability to configure more of the ZVAFilter's parameters from the plugin's GUI, but didn't wish to actually change the contents of fxobjects.h, so opted to create a custom implementation is a separate source file.
I added 3 files to the PluginObjects directory of the RackAFXProject, and added these to the Visual Studio solution. Building in RackAFX went fine, and I could load & run the plugin in RackAFX. On exporting the project to ASPiK (VST only) though, it seems that these newly added files weren't added to the \project_source\cmake\vst_cmake\CMakeLists.txt file in the ASPiK project.
On building the ASPiK sln file, I hit a linker issue "fatal error LNK1120: 1 unresolved externals"
I have found, that the newly added .h and .cpp files were copied across to the ASPiK project, and if I add these files to this generated CMakeLists.txt file, the linker stops complaining and will build the VST3 successfully. I'm experimenting with a lot of ideas with this plugin though, and am going through many iterations of exporting the ASPiK project. This works well actually (my git diff shows that it's quite easy to export a RackAFX project to ASPiK many times over, with only the pertinent changes, as well as the uniquely generated IDs in plugindescription.h, overwritten).
What I'd really like to know is, whether there is any way of informing RackAFX to include other source files than the standard ones to the CMakeLists.txt - I would have hoped that the list of files to compile would have been generated from the RackAFX Visual Studio project, but it appears to be more static than this. Clearly adding these files after exporting resolves the linker error, but having to do this repeatedly is far from ideal.
This might possibly have a root cause similar to the issue described here:
That is correct. On exporting, RackAFX will attempt to include files you added into Visual Studio.
For more complex stuff, like adding 3rd party libraries, DLLs or LIBs, you will need to edit the CMake files yourself (it sucks, and the learning curve is not easy but there is no easy way around that).
Most Users Ever Online: 152
Currently Browsing this Page:
Guest Posters: 1
Newest Members:Juan Manuel, KamikazeVildsvin, mespadoto, gabriel, Cameron C., Kaih, davidfernxndez, J.Miguel, 3ddie, Mike
Moderators: W Pirkle: 663