Embedding MacRuby in your application

braxton edited this page Apr 11, 2012 · 2 revisions

By default, an application that you create with MacRuby will only work on computers where MacRuby is installed. This can be a problem if you want to distribute your application, since your users may not have installed MacRuby.

In order to fix this problem, MacRuby can be embedded in your application. An application with MacRuby embedded will work everywhere.

You can select the "Deployment" scheme then click [Run] like the following figure. MacRuby is now embedded into your application.


You can customize the deployment options by changing the "Arguments" field, as shown here.


You can run the macruby_deploy command in Terminal.app to show the list of possible options.

$ macruby_deploy 
Usage: macruby_deploy [options] application-bundle
        --compile                    Compile the bundle source code
        --embed                      Embed MacRuby inside the bundle
        --no-stdlib                  Do not embed the standard library
        --stdlib [LIB]               Embed only LIB from the standard library
        --gem [GEM]                  Embed GEM and its dependencies
        --bs                         Embed the system BridgeSupport files
        --verbose                    Log all commands to standard out
        --codesign [CERT]            Sign the files with the specified certificate
    -v, --version                    Display the version