Hi, I am encountering an odd behavior of gem install function. Can anyone explain me what "gem install" actually does? I have several C code and header files, and one extconf.rb file, + mygem.gemspec file. So, when I build a gem it successfully creates mygem-0.61.gem. So, when I install it locally using "gem install mygem-0.61.gem" I expect the gem to create a makefile, because in the extconf.rb file I explicitly indicate it, and then "make install" that newly created Makefile. However, "gem install'' does not create a Makefile and does not install it. What it does is just copies those several files to the gem directory, where Gem keeps all its gems. What I have to do is manually rub "ruby extconf.rb", which creates the Makefile, and manually "make install". The questions is: Should not "gem install" perform all these operation by itself, when I type "gem install mygem"? Thank you in advance for your help. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On Jul 30, 10:19 am, CUBRID <kadish...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Hi, > > I am encountering an odd behavior of gem install function. Can anyone > explain me what "gem install" actually does? > > I have several C code and header files, and one extconf.rb file, + > mygem.gemspec file. So, when I build a gem it successfully creates > mygem-0.61.gem. > > So, when I install it locally using "gem install mygem-0.61.gem" I > expect the gem to create a makefile, because in the extconf.rb file I > explicitly indicate it, and then "make install" that newly created > Makefile. However, "gem install'' does not create a Makefile and does > not install it. What it does is just copies those several files to the > gem directory, where Gem keeps all its gems. > > What I have to do is manually rub "ruby extconf.rb", which creates the > Makefile, and manually "make install". > > The questions is: Should not "gem install" perform all these operation > by itself, when I type "gem install mygem"?You need to indicate in your gemspec that there is a native library to build. You might get more answers on one of the main ruby lists as this isn''t really a rails question. Fred -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Thank you! I will post to the rubygems gorup. But, if you might have time to explain me which specification exactly should be set, I would be very glad for your help! What I understand from what you''ve said is the "s.platform = Gem::Platform::RUBY" specification. If, so, this is exactly what I did, i.e. set it to Native Ruby. Anyway, thank you for you help! Esen. On Jul 30, 6:53 pm, Frederick Cheung <frederick.che...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> On Jul 30, 10:19 am, CUBRID <kadish...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > > > > Hi, > > > I am encountering an odd behavior of gem install function. Can anyone > > explain me what "gem install" actually does? > > > I have several C code and header files, and one extconf.rb file, + > > mygem.gemspec file. So, when I build a gem it successfully creates > > mygem-0.61.gem. > > > So, when I install it locally using "gem install mygem-0.61.gem" I > > expect the gem to create a makefile, because in the extconf.rb file I > > explicitly indicate it, and then "make install" that newly created > > Makefile. However, "gem install'' does not create a Makefile and does > > not install it. What it does is just copies those several files to the > > gem directory, where Gem keeps all its gems. > > > What I have to do is manually rub "ruby extconf.rb", which creates the > > Makefile, and manually "make install". > > > The questions is: Should not "gem install" perform all these operation > > by itself, when I type "gem install mygem"? > > You need to indicate in your gemspec that there is a native library to > build. You might get more answers on one of the main ruby lists as > this isn''t really a rails question. > > Fred-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
On Aug 2, 2:06 am, CUBRID <kadish...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Thank you! > > I will post to the rubygems gorup. But, if you might have time to > explain me which specification exactly should be set, I would be very > glad for your help! What I understand from what you''ve said is the > "s.platform = Gem::Platform::RUBY" specification. If, so, this is > exactly what I did, i.e. set it to Native Ruby. >No, that''s not what you need, see http://docs.rubygems.org/read/chapter/20#extensions You might also want ot look at an existing gem that contains a native library and see what it does Fred> Anyway, thank you for you help! > > Esen. > > On Jul 30, 6:53 pm, Frederick Cheung <frederick.che...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> > wrote: > > > > > On Jul 30, 10:19 am, CUBRID <kadish...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > Hi, > > > > I am encountering an odd behavior of gem install function. Can anyone > > > explain me what "gem install" actually does? > > > > I have several C code and header files, and one extconf.rb file, + > > > mygem.gemspec file. So, when I build a gem it successfully creates > > > mygem-0.61.gem. > > > > So, when I install it locally using "gem install mygem-0.61.gem" I > > > expect the gem to create a makefile, because in the extconf.rb file I > > > explicitly indicate it, and then "make install" that newly created > > > Makefile. However, "gem install'' does not create a Makefile and does > > > not install it. What it does is just copies those several files to the > > > gem directory, where Gem keeps all its gems. > > > > What I have to do is manually rub "ruby extconf.rb", which creates the > > > Makefile, and manually "make install". > > > > The questions is: Should not "gem install" perform all these operation > > > by itself, when I type "gem install mygem"? > > > You need to indicate in your gemspec that there is a native library to > > build. You might get more answers on one of the main ruby lists as > > this isn''t really a rails question. > > > Fred-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.
Actually I had that line before. Then I removed it when I build a gem for win32 as I didn''t need to build anything. Then forgot to paste back. Thank you, Fred, for the notice. On Aug 2, 5:30 pm, Frederick Cheung <frederick.che...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> On Aug 2, 2:06 am,CUBRID<kadish...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Thank you! > > > I will post to the rubygems gorup. But, if you might have time to > > explain me which specification exactly should be set, I would be very > > glad for your help! What I understand from what you''ve said is the > > "s.platform = Gem::Platform::RUBY" specification. If, so, this is > > exactly what I did, i.e. set it to Native Ruby. > > No, that''s not what you need, seehttp://docs.rubygems.org/read/chapter/20#extensions > You might also want ot look at an existing gem that contains a native > library and see what it does > > Fred > > > > > Anyway, thank you for you help! > > > Esen. > > > On Jul 30, 6:53 pm, Frederick Cheung <frederick.che...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> > > wrote: > > > > On Jul 30, 10:19 am,CUBRID<kadish...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > > > Hi, > > > > > I am encountering an odd behavior of gem install function. Can anyone > > > > explain me what "gem install" actually does? > > > > > I have several C code and header files, and one extconf.rb file, + > > > > mygem.gemspec file. So, when I build a gem it successfully creates > > > > mygem-0.61.gem. > > > > > So, when I install it locally using "gem install mygem-0.61.gem" I > > > > expect the gem to create a makefile, because in the extconf.rb file I > > > > explicitly indicate it, and then "make install" that newly created > > > > Makefile. However, "gem install'' does not create a Makefile and does > > > > not install it. What it does is just copies those several files to the > > > > gem directory, where Gem keeps all its gems. > > > > > What I have to do is manually rub "ruby extconf.rb", which creates the > > > > Makefile, and manually "make install". > > > > > The questions is: Should not "gem install" perform all these operation > > > > by itself, when I type "gem install mygem"? > > > > You need to indicate in your gemspec that there is a native library to > > > build. You might get more answers on one of the main ruby lists as > > > this isn''t really a rails question. > > > > Fred-- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.