Unable to build Ruby RPM #201

Closed
johntdyer opened this Issue Apr 10, 2012 · 5 comments

Projects

None yet

3 participants

@johntdyer

Any idea whats going on here?

  • fpm (0.4.5)
  • CentOS release 5.7 (Final) ( 2.6.18-238.9.1.el5 #1 SMP Tue Apr 12 18:10:13 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux )
    [root@tropo205 ruby-1.9.3-p125] fpm --prefix=/ -s dir -t rpm -n ruby -v 1.9.3p125 -C /tmp/installdir -p ruby-VERSION_ARCH.rpm -d "libstdc++ >= 4.1.2" -d "glibc >= 2.5" -d "libffi >= 3.0.5" -d "zlib >= 1.2.3" -d "readline >= 5.1" -d "libyaml >= 0.1.2" -d "openssl >= 0.9.8"
    No parameters given. You need to pass additional command arguments so that I know what you want to build packages from.    For example, for '-s dir' you would pass a list of files and directories. For '-s gem' you would pass a one or more gems to package  from. As a full example, this will make an rpm of the 'json' rubygem: `fpm -s gem -t rpm json` {"level":"warn"}
    Fix the above problems, and you'll be rolling packages in no time! {"level":"fatal"}
@jordansissel
Owner

For curiosity, what did you expect to happen? Was this working before?

Looks like you didn't specify a path to use as a directory to put into the package. Hopefully the error message was helpful here?

@johntdyer

Jordan,

This is the first time I have ever used FPM so to answer your question, I guess I expected it to work :P.  As for the error, no it was / is not really that clear to me at all.   What flag is missing here?  Can you give me an example?  Thanks again!  
@johntdyer

ok, so I think I got it now... Needed to specify the files to include

so if I did

make install DESTDIR=/tmp/installdir

I would just add a period to the end of my fpm command, like this?

fpm --verbose --prefix=/ -s dir -t rpm -n ruby -v 1.9.3 -C /tmp/installdir -p ruby-VERSION_ARCH.rpm -d "libstdc++ >= 4.1.2" -d "glibc >= 2.5" -d "libffi >= 3.0.5" -d "zlib >= 1.2.3" -d "readline >= 5.1" -d "libyaml >= 0.1.2" -d "openssl >= 0.9.8" .

With the -C flag I dont need to actually run this from within the /tmp/installdir, is that correct?

@jordansissel
Owner

Yep you figured it out, awesome! Sorry it was confusing; I"ll work on some better error messages :)

As for your question, yes you just add a period to the end. However, in fpm 0.4.4 (and newer) it should assume that if you specify '-s dir' and '-C whatever' it assumes you meant to add a '.' to the end if it was not present. This is a bug.

For now, your work around (put a period at the end) should suffice. Let me know of course if this doesn't work for you.

Also, if you had any other stumbles along the way with fpm, please let me know - first-time users are uniquely qualified to call out bad first-time experiences :)

@pwsouth
pwsouth commented Oct 18, 2012

This fixed my mistake with fpm 0.4.13. Thanks for the clues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment