Most recent edit on 2007-11-22 06:16:42 by LaurentSansonetti
Deletions:
dartrsit
Edited on 2007-11-15 14:19:28 by TrvivArric
Additions:
dartrsit
Edited on 2007-10-01 07:47:25 by LaurentSansonetti
Additions:
Deletions:
Edited on 2007-10-01 07:44:51 by LaurentSansonetti
Additions:
Edited on 2007-10-01 07:43:16 by LaurentSansonetti
Additions:
standalonify won't embed the Ruby runtime library, libruby.1.dylib, but it's possible to do it, by following for example the steps below:
require 'pathname'
exec = File.join(ENV['TARGET_BUILD_DIR'], ENV['EXECUTABLE_PATH'])
old = Pathname.new('/usr/lib/libruby.1.dylib').realpath
new = '@executable_path/../Resources/libruby.1.dylib'
system("install_name_tool -change '#{old}' '#{new}' '#{exec}'") or exit 1
Edited on 2007-05-21 14:13:58 by LaurentSansonetti
Additions:
RubyCocoa ships with a tool called standaloneify.rb, in framework/tool, that will embed the Ruby libraries and gems your application depends on. Usage is simple:
Deletions:
RubyCocoa ships with a tool called standaloneify.rb, in framework/tool, that will embed everything your application depends on. Usage is simple:
Edited on 2007-05-21 12:58:58 by LaurentSansonetti
Additions:
As you can imagine, in order to address this you will have to customize the build of your application target to explicitly copy the required Ruby files and libraries inside the Resources folder of your application. And you could also have to do more complicated stuff to handle the gems.
RubyCocoa ships with a tool called standaloneify.rb, in framework/tool, that will embed everything your application depends on. Usage is simple:
Deletions:
Also, your application could depend on a special version of the Ruby interpreter that might not be present in the deployment environment.
As you can imagine in order to address this you will have to customize the build of your application target to explicitly copy the required Ruby files and libraries inside the Resources folder of your application.
Another way to do this is to use the standaloneify.rb tool, that will embed everything needed inside your application (your Ruby interpreter, the libraries and gems).
Edited on 2007-05-21 11:42:28 by LaurentSansonetti
Additions:
Deletions:
Edited on 2007-05-21 10:12:56 by LaurentSansonetti
Additions:
Also, your application could depend on a special version of the Ruby interpreter that might not be present in the deployment environment.
As you can imagine in order to address this you will have to customize the build of your application target to explicitly copy the required Ruby files and libraries inside the Resources folder of your application.
Another way to do this is to use the standaloneify.rb tool, that will embed everything needed inside your application (your Ruby interpreter, the libraries and gems).
Deletions:
If your application uses RubyGems, you might also want to distribute it as well as the necessary gems. explain how
standaloneify.rb can pull the ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
Edited on 2007-05-21 10:01:50 by LaurentSansonetti
Additions:
If your application uses RubyGems, you might also want to distribute it as well as the necessary gems. explain how
Deletions:
If your application uses RubyGems, you might also want to distribute the gems with it. explain how
Edited on 2007-05-21 09:56:03 by LaurentSansonetti
Additions:
~- Add a new Copy Files Phase to the appropriate target.
Deletions:
~- Add a new ((Copy Files Phase)) to the appropriate target. Set the destination to ((Frameworks)).
Drag RubyCocoa.framework into the new copy files group.
Edited on 2007-05-21 09:53:55 by LaurentSansonetti
Additions:
If your application uses RubyGems, you might also want to distribute the gems with it. explain how standaloneify.rb can pull the ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
Deletions:
standaloneify.rb can pull in ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
Edited on 2007-05-21 09:36:02 by LaurentSansonetti
Additions:
You might want to distribute RubyCocoa with your application to not force your users to systematically install RubyCocoa on their machine in order to use your application.
RubyCocoa by default builds as an embeddable framework. It means that you can simply copy it inside your application bundle. You can do this fairly easily:
Deletions:
To copy the RubyCocoa framework into your application bundle from Xcode; add a copy files build phase to the appropriate target, set the destination to 'Frameworks' and drag the RubyCocoa framework into the new copy files group.
Edited on 2007-05-19 22:57:33 by JeanPierre [minor cleanup]
Additions:
To copy the RubyCocoa framework into your application bundle from Xcode; add a copy files build phase to the appropriate target, set the destination to 'Frameworks' and drag the RubyCocoa framework into the new copy files group.
Deletions:
from xcode to copy the RubyCocoa framework into your application bundle, add a copy files build phase to the target, set the destination to 'Frameworks', drag the RubyCocoa framework into the new copy files group
Oldest known version of this page was edited on 2007-05-18 20:55:57 by JeanPierre [placeholder text to get things started]
from xcode to copy the RubyCocoa framework into your application bundle, add a copy files build phase to the target, set the destination to 'Frameworks', drag the RubyCocoa framework into the new copy files group
Deletions:
dartrsit
Edited on 2007-11-15 14:19:28 by TrvivArric
Additions:
dartrsit
Edited on 2007-10-01 07:47:25 by LaurentSansonetti
Additions:
Distributing the RubyCocoa Framework
Distributing the Ruby Libraries and Gems
Distributing the Ruby Runtime Library
Deletions:
Distributing the Dependencies
Ruby Libraries and Gems
Edited on 2007-10-01 07:44:51 by LaurentSansonetti
Additions:
Ruby Libraries and Gems
Edited on 2007-10-01 07:43:16 by LaurentSansonetti
Additions:
standalonify won't embed the Ruby runtime library, libruby.1.dylib, but it's possible to do it, by following for example the steps below:
- Explicitly link against your specific version of libruby.1.dylib, by drag-and-dropping it in your Xcode project. Making sure the library is also in the project directory may help.
- Modify your target build so that the library will be copied inside your application bundle. An easy way is to add it to the already-existing Copy Bundle Resources phase. The library will therefore be copied in the Resources directory of your application bundle.
- Add a new Run Script Build Phase that will call the install_name_tool program on your application binary, to force the link against your embedded version of libruby.1.dylib at runtime. Here is an example that uses /usr/bin/env ruby as its shell:
require 'pathname'
exec = File.join(ENV['TARGET_BUILD_DIR'], ENV['EXECUTABLE_PATH'])
old = Pathname.new('/usr/lib/libruby.1.dylib').realpath
new = '@executable_path/../Resources/libruby.1.dylib'
system("install_name_tool -change '#{old}' '#{new}' '#{exec}'") or exit 1
Edited on 2007-05-21 14:13:58 by LaurentSansonetti
Additions:
RubyCocoa ships with a tool called standaloneify.rb, in framework/tool, that will embed the Ruby libraries and gems your application depends on. Usage is simple:
Deletions:
RubyCocoa ships with a tool called standaloneify.rb, in framework/tool, that will embed everything your application depends on. Usage is simple:
Edited on 2007-05-21 12:58:58 by LaurentSansonetti
Additions:
As you can imagine, in order to address this you will have to customize the build of your application target to explicitly copy the required Ruby files and libraries inside the Resources folder of your application. And you could also have to do more complicated stuff to handle the gems.
RubyCocoa ships with a tool called standaloneify.rb, in framework/tool, that will embed everything your application depends on. Usage is simple:
$ ruby standalonify.rb -d MyStandaloneProg.app MyBuiltinProg.app
Deletions:
Also, your application could depend on a special version of the Ruby interpreter that might not be present in the deployment environment.
As you can imagine in order to address this you will have to customize the build of your application target to explicitly copy the required Ruby files and libraries inside the Resources folder of your application.
Another way to do this is to use the standaloneify.rb tool, that will embed everything needed inside your application (your Ruby interpreter, the libraries and gems).
Edited on 2007-05-21 11:42:28 by LaurentSansonetti
Additions:
Distributing the Dependencies
Deletions:
Dependencies
Edited on 2007-05-21 10:12:56 by LaurentSansonetti
Additions:
Dependencies
If your application uses RubyGems, you might also want to distribute it as well as the necessary gems. You application may also depend on a third-party Ruby library.Also, your application could depend on a special version of the Ruby interpreter that might not be present in the deployment environment.
As you can imagine in order to address this you will have to customize the build of your application target to explicitly copy the required Ruby files and libraries inside the Resources folder of your application.
Another way to do this is to use the standaloneify.rb tool, that will embed everything needed inside your application (your Ruby interpreter, the libraries and gems).
Deletions:
If your application uses RubyGems, you might also want to distribute it as well as the necessary gems. explain how
standaloneify.rb can pull the ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
Edited on 2007-05-21 10:01:50 by LaurentSansonetti
Additions:
If your application uses RubyGems, you might also want to distribute it as well as the necessary gems. explain how
Deletions:
If your application uses RubyGems, you might also want to distribute the gems with it. explain how
Edited on 2007-05-21 09:56:03 by LaurentSansonetti
Additions:
~- Add a new Copy Files Phase to the appropriate target.
- Set the destination to Frameworks.
- Drag RubyCocoa.framework into the new copy files group.
Deletions:
~- Add a new ((Copy Files Phase)) to the appropriate target.
Edited on 2007-05-21 09:53:55 by LaurentSansonetti
Additions:
If your application uses RubyGems, you might also want to distribute the gems with it. explain how standaloneify.rb can pull the ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
Deletions:
standaloneify.rb can pull in ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
Edited on 2007-05-21 09:36:02 by LaurentSansonetti
Additions:
You might want to distribute RubyCocoa with your application to not force your users to systematically install RubyCocoa on their machine in order to use your application.
RubyCocoa by default builds as an embeddable framework. It means that you can simply copy it inside your application bundle. You can do this fairly easily:
- Add a new ((Copy Files Phase)) to the appropriate target.
- Set the destination to ((Frameworks)).
- Drag RubyCocoa.framework into the new copy files group.
Deletions:
To copy the RubyCocoa framework into your application bundle from Xcode; add a copy files build phase to the appropriate target, set the destination to 'Frameworks' and drag the RubyCocoa framework into the new copy files group.
Edited on 2007-05-19 22:57:33 by JeanPierre [minor cleanup]
Additions:
To copy the RubyCocoa framework into your application bundle from Xcode; add a copy files build phase to the appropriate target, set the destination to 'Frameworks' and drag the RubyCocoa framework into the new copy files group.
Deletions:
from xcode to copy the RubyCocoa framework into your application bundle, add a copy files build phase to the target, set the destination to 'Frameworks', drag the RubyCocoa framework into the new copy files group
Oldest known version of this page was edited on 2007-05-18 20:55:57 by JeanPierre [placeholder text to get things started]
Page view:
standaloneify.rb can pull in ruby/gems and the rubycocoa framework (could make this an Xcode run script build phase)
from xcode to copy the RubyCocoa framework into your application bundle, add a copy files build phase to the target, set the destination to 'Frameworks', drag the RubyCocoa framework into the new copy files group