Quick Sign In:  

Forum: VirtualDJ Plugins

话题: Process to generate .bundle for mac
I"m learning to use xcode to make my plugins compatible for mac.
I get some .dylibs.
What is the process for generating .bundle?

发表时间 Sat 10 Oct 20 @ 11:18 am
djcelPRO InfinityModeratorMember since 2004

Add the framework : CoreFoundation.framework by clicking on the +

By default the bundle is created in this folder /Users/xxxx/Library/Developer/XCode/DerivedData/xxxxxxx
(see in red below)

Personnaly I prefer a relative path. Click on "File" then "Project settings..."

You can also define this relative path approach to be activated by default for each new project by clicking on "XCode" then "Preferences".
Please also not the "Archives" path that you can also customize.

The idea behind the type of build (debug or release) is available by clicking on "Product" then "Scheme" then "Edit Scheme"
"Archives" is when you want to deploy your build on AppStore

For release build, you can change the "Run" to select "Release" instead of "Debug" in this window

Then click on "Product" then "Destination" then "Choose Destination", select "Any Mac (Intel)" instead of "My Mac"

After that, you can start to add your files (.h and .cpp) in the "MyPlugin" yellow folder.

Add your resources if you have some (in order to be included in the bundle) in "Copy Bundle Resources" section.
Add your .cpp files (no need to add .h files) in "Compile Sources" section

Finally you click on "Product" then "Build"

发表时间 Mon 02 Nov 20 @ 10:51 pm
Thank you DJCEL.
I will try the week-end ;-)

发表时间 Sat 07 Nov 20 @ 10:24 am
I have just successfully compiled in .bundle on mac :-)

Is there also a release mode on xcode?
Because apparently the compilation is in debug mode.

发表时间 Sat 07 Nov 20 @ 3:12 pm
djcelPRO InfinityModeratorMember since 2004
I answered with additional screenshots above.

"Archives" is when you want to deploy your build on AppStore

发表时间 Sat 07 Nov 20 @ 10:50 pm
Perfect DJCEL !

Thank you

发表时间 Sun 15 Nov 20 @ 12:53 pm
djcelPRO InfinityModeratorMember since 2004
You are welcome. You can share with me one test of bundle file (release build) (zip it before sending it) and i check on my system that everything works ok.
Then you can upload everything on the website ;-)

Use the variable VDJ_MAC in your code (with #if defined(VDJ_MAC) on the parts of your code that are differents between both version) to keep one source file. Easier for updates

one_example wrote :
#if (defined(VDJ_WIN))
rcXML.id = IDR_SKINXML; // as defined in resource.h
rcPNG.id = IDR_SKINPNG; // as defined in resource.h
rcXML.type = "XML";
rcPNG.type = "PNG";
#elif (defined(VDJ_MAC))
rcXML.name = "FX_GUI.xml";
rcPNG.name = "FX_GUI.png";

发表时间 Sun 15 Nov 20 @ 1:11 pm