# Please help on gem packaging

**URL:** <https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207>\
**Category:** Ruby\
**Created:** [December 24, 2005, 4:42pm UTC](https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207 "2005-12-24T16:42:05Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mohammad\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/8e8cbc/32.png) [@Mohammad\_K](https://www.ruby-forum.com/u/Mohammad_K)\
**Post date:** [December 24, 2005, 4:42pm UTC](https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207/1 "2005-12-24T16:42:05Z")

</div>

Hello,

First let me show you my gemspec file,

#########################  
require ‘rubygems’

SPEC = Gem::Specification.new do | s |  
# Quick fix for Ruby 1.8.3 / YAML bug  
#if (RUBY\_VERSION == ‘1.8.3’)  
# def spec.to\_yaml  
# out = super  
# out = '— ’ + out unless out =~ /^—/  
# out  
# end  
#end

```
    s.name = "ruby-agi"
    s.version = "1.0.0"
    s.author = "Mohammad K."
    s.email = "removed_email_address@domain.invalid"
    s.homepage = 

```

“[http://www.ruby-agi.org](http://www.ruby-agi.org)”  
s.platform = Gem::Platform::RUBY  
s.summary = “Ruby Language API  
for Asterisk”  
s.files = [  
“README”,  
“LICENSE”,  
“INSTALL”,  
“DOWNLOAD”,  
“extconf.rb”,  
“lib/agi.rb”,

“lib/command.rb”,

“lib/asterisk\_variable.rb”,  
“lib/error.rb”,

“lib/return\_status.rb”,

“examples/call\_log.rb”  
]  
s.require\_path = “lib”  
s.autorequire = “ruby-agi”  
#s.test\_file = “test/test.rb”  
s.has\_rdoc = true  
s.extra\_rdoc\_files = [“README”]  
s.required\_ruby\_version = ‘\>= 1.8.3’  
#s.signing\_key =  
‘/media/cdrom/gem-private\_key.pem’  
#s.cert\_chain = [‘gem-public\_cert.pem’]  
end

if $0 == **FILE**  
Gem::manage\_gems  
Gem::Builder.new(SPEC).build  
end

#####################  
I could make ruby-agi-1.0.0.gem by executing  
gem build

But problem is here:

[beeplove@vpn ruby-agi]$ irb  
irb(main):001:0\> require ‘rubygems’  
=\> true  
irb(main):002:0\> require\_gem ‘ruby-agi’  
ruby-agi  
LoadError: no such file to load – ruby-agi  
from /usr/lib/site\_ruby/1.8/rubygems/custom\_require.rb:22:in  
`require__' from /usr/lib/site_ruby/1.8/rubygems/custom_require.rb:22:in `require’  
from /usr/lib/site\_ruby/1.8/rubygems.rb:182:in `activate' from /usr/lib/site_ruby/1.8/rubygems.rb:181:in `activate’  
from /usr/lib/site\_ruby/1.8/rubygems.rb:37:in  
`require_gem_with_options' from /usr/lib/site_ruby/1.8/rubygems.rb:31:in `require\_gem’  
from (irb):2  
irb(main):003:0\>

I am not sure, where I am doing wrong. Would anybody please show my  
mistake.

Thanks,  
Mohammad

---

<div class="post-metadata">

**Author:** ![Mohammad\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/8e8cbc/32.png) [@Mohammad\_K](https://www.ruby-forum.com/u/Mohammad_K)\
**Post date:** [December 24, 2005, 5:18pm UTC](https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207/2 "2005-12-24T17:18:10Z")

</div>

> I am not sure, where I am doing wrong. Would anybody please  
> show my mistake

Between building a gem and using that gem, you probably have to  
install it.

gegroet,  
Erik V. - [http://www.erikveen.dds.nl/](http://www.erikveen.dds.nl/)

---

<div class="post-metadata">

**Author:** ![Mohammad\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/8e8cbc/32.png) [@Mohammad\_K](https://www.ruby-forum.com/u/Mohammad_K)\
**Post date:** [December 24, 2005, 6:18pm UTC](https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207/3 "2005-12-24T18:18:18Z")

</div>

Ohh yes, I did it by using,  
gem install --local ruby-agi-1.0.0.gem  
And getting the error posted in my earlier message.  
Sorry, forgot to metion this step.

---

<div class="post-metadata">

**Author:** ![Mohammad\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/8e8cbc/32.png) [@Mohammad\_K](https://www.ruby-forum.com/u/Mohammad_K)\
**Post date:** [December 24, 2005, 7:28pm UTC](https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207/4 "2005-12-24T19:28:29Z")

</div>

Mohammad K. wrote:

> Hello,
> 
> First let me show you my gemspec file,  
> […]  
> s.files = [  
> “README”,  
> “LICENSE”,  
> “INSTALL”,  
> “DOWNLOAD”,  
> “extconf.rb”,  
> “lib/agi.rb”,  
> “lib/command.rb”,  
> “lib/asterisk\_variable.rb”,  
> “lib/error.rb”,  
> “lib/return\_status.rb”,  
> “examples/call\_log.rb”  
> s.require\_path = “lib”  
> s.autorequire = “ruby-agi”  
> […]

You autorequire ‘ruby-agi’, but don’t provide a file named ‘ruby-agi.rb’  
in your lib directory.

I would recommend just dropping the autorequire line. Since modern  
versions of RubyGems automatically activates the gems, it is not very  
useful.

Your users just need to write:

```
require 'rubygems'
require 'agi'

```

No need to invoke require\_gem at all (unless you need to specify a  
particular version).

–  
– Jim W.

---

<div class="post-metadata">

**Author:** ![Mohammad\_K](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/8e8cbc/32.png) [@Mohammad\_K](https://www.ruby-forum.com/u/Mohammad_K)\
**Post date:** [December 30, 2005, 3:05am UTC](https://www.ruby-forum.com/t/please-help-on-gem-packaging/75207/5 "2005-12-30T03:05:39Z")

</div>

Hi Jim,

Thanks for your help.  
Yes, I was not using autorequire correctly.  
After looking at couple of other project’s gemspec, I understood it  
better.

Thanks again,  
Mohammad
