I think Laurent and I were discussing some issues with the AOT compiling of certain stdlib files causing problems. My specific case was from the RSS module.
https://www.macruby.org/trac/ticket/1020 On 5 May 2011, at 14:39, Eloy Duran wrote: > Aha indeed! Yes we should definitely compile them imo. But I’m not > sure if there’s a good reason for excluding stdlib and gems from > compilation. The last time I tried there was no problem with compiling > it all. Can you change this in source/bin/ruby_deploy and see if your > app works good afterwards? If so I’ll apply that, right now I’m going > to start on a test suite for the tool as it is. > > On Thu, May 5, 2011 at 2:58 PM, Petr Kaleta <petr.kal...@me.com> wrote: >> Yes, you said, that it compile all files from Resources directory, but gems >> are embeded in Framework directory. So thats why, they are not compiled. Can >> be STDLIB compiled as well? >> >> - Petr >> >> On May 5, 2011, at 2:34 PM, Eloy Duran wrote: >> >>> No, that's not right. The embed code is run before the compile code >>> and the compile code uses the following to select all ruby files in >>> the Resources directory of the app bundle: >>> >>> def compile_files >>> Dir.glob(File.join(app_resources, '**', '*.rb')) >>> end >>> >>> It would be great if you can upload a sample that shows this. >>> >>> On Thu, May 5, 2011 at 2:11 PM, Petr Kaleta <petr.kal...@me.com> wrote: >>>> Now I am looking in the application package and embeded gems are not >>>> compiled. And as you can see here http://cl.ly/240t0v3q2O221X3U113u some >>>> ruby files compiled are, but there are source files as well. Embeded >>>> STDlib is not compiled at all http://cl.ly/2d2D2R2L451m2C2x472J >>>> >>>> Is this right? >>>> >>>> On May 5, 2011, at 1:27 PM, Petr Kaleta wrote: >>>> >>>>> Thanks for reply, that works. So after deploying, my whole application >>>>> has about 45MB (zipped 12MB). My only question is, can I somehow speedup >>>>> application start? Now it takes about 10 seconds (loading gems & project >>>>> files). >>>>> >>>>> - Petr >>>>> >>>>> On May 5, 2011, at 12:13 PM, Eloy Duran wrote: >>>>> >>>>>> No it's not your fault, it seems the code assumes a ENV variable >>>>>> that's set by Xcode. This is the offending code: >>>>>> >>>>>> compile_options = { bundle: true, output: obj, files: [source] } >>>>>> # Use Xcode ARCHS env var to determine which archs to compile for >>>>>> compile_options[:archs] = ENV['ARCHS'].strip.split if ENV['ARCHS'] >>>>>> # Check that the ARCHS env var contains valid values >>>>>> supported_archs = RbConfig::CONFIG['ARCH_FLAG'].gsub('-arch', >>>>>> '').strip.split >>>>>> compile_options[:archs].delete_if do |arch| >>>>>> unless supported_archs.include?(arch) >>>>>> puts "Can't build for arch #{arch} because it is not supported" >>>>>> true >>>>>> end >>>>>> end >>>>>> >>>>>> I think that if the ENV['ARCHS'] variable isn't set we should check >>>>>> the app binary for the archs it's been built for. I'll create a path >>>>>> in a bit. >>>>>> >>>>>> For now you should be able to work around it by doing: >>>>>> >>>>>> env ARCHS='i386 x86_64' macruby_deploy --compile --embed --gem >>>>>> rest-client --gem sequel --bs Issues.app >>>>>> >>>>>> And adjust the actual archs for the ones your app is built for. >>>>>> >>>>>> On Thu, May 5, 2011 at 11:57 AM, Petr Kaleta <petr.kal...@me.com> wrote: >>>>>>> Hi everyone, I'd like to deploy my Macruby app using: >>>>>>> >>>>>>> macruby_deploy --compile --embed --gem rest-client --gem sequel --bs >>>>>>> Issues.app >>>>>>> >>>>>>> but I'm getting this error: >>>>>>> >>>>>>> *** Deployment started >>>>>>> *** Embedding MacRuby.framework >>>>>>> *** Embed RubyGems libdirs: >>>>>>> /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/Gems/1.9.2/gems/mime-types-1.16/lib, >>>>>>> >>>>>>> /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/Gems/1.9.2/gems/rest-client-1.6.1/lib, >>>>>>> >>>>>>> /Library/Frameworks/MacRuby.framework/Versions/0.11/usr/lib/ruby/Gems/1.9.2/gems/sequel-3.22.0/lib >>>>>>> *** Embed BridgeSupport system files >>>>>>> *** Fix install path of binaries >>>>>>> *** Fix identification name of libmacruby >>>>>>> *** Compiling files >>>>>>> /usr/local/bin/macruby_deploy:127:in `block': undefined method >>>>>>> `delete_if' for nil:NilClass (NoMethodError) >>>>>>> from /usr/local/bin/macruby_deploy:117:in `compile' >>>>>>> from /usr/local/bin/macruby_deploy:70:in `run' >>>>>>> from /usr/local/bin/macruby_deploy:283:in `<main>' >>>>>>> >>>>>>> Am I doing something wrong, or this is some bug in macruby_deploy tool? >>>>>>> I am using the latest macruby version from origin/master. >>>>>>> >>>>>>> - Petr >>>>>>> _______________________________________________ >>>>>>> MacRuby-devel mailing list >>>>>>> MacRuby-devel@lists.macosforge.org >>>>>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >>>>>>> >>>>>> _______________________________________________ >>>>>> MacRuby-devel mailing list >>>>>> MacRuby-devel@lists.macosforge.org >>>>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >>>>> >>>>> _______________________________________________ >>>>> MacRuby-devel mailing list >>>>> MacRuby-devel@lists.macosforge.org >>>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >>>> >>>> _______________________________________________ >>>> MacRuby-devel mailing list >>>> MacRuby-devel@lists.macosforge.org >>>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >>>> >>> _______________________________________________ >>> MacRuby-devel mailing list >>> MacRuby-devel@lists.macosforge.org >>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >> >> _______________________________________________ >> MacRuby-devel mailing list >> MacRuby-devel@lists.macosforge.org >> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >> > _______________________________________________ > MacRuby-devel mailing list > MacRuby-devel@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel