On Wed, Dec 7, 2011 at 10:37 AM, Dave Howorth <dhoworth@mrc-lmb.cam.ac.uk> wrote:
Greg Freemyer wrote:
I'm trying to package up something new. The release notes I think said it needed IO::Compress, so I possibly naively just put it in the specfile as a Requires.
So I'm digging deep so I get it right. Then I will push it to factory eventually.
The way to get it right is to take a blank machine and install whatever opensuse release you want. Then install perl, if it isn't automatic.
Then load the application and try to run it. Look at the output and use the error messages to tell you what modules it needs. Install those. Check the application runs.
By all means then check with the release notes :)
Then start writing a spec file and making an RPM.
Then take a blank machine and install whatever opensuse release you want. Then install perl, if it isn't automatic. Then install the application RPM. Check the application runs.
JMHO.
Dave, I'm not a perl expert. The theory is you should not have to be an expert in a language to package up a app written in it. I "think" with perl, the "use" statements can be anywhere in the code. When one of those is hit, the module in question is loaded. So to do as you suggest would required exercising every code path that has a "use" statement in it. That is not necessarily very effective. Further, since I don't know perl very well, I don't know what other mechanisms would cause a module to be loaded. So, I'm reversing your process. Create what I believe to be a good specfile by reading release notes and code, then try to run it and and any Requires that I come across. Greg -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org