On Friday 09 Jan 2004 4:35 pm, Warren Post wrote:
> Reposting at Margot's suggestion...
>
> *****
>
> I'm trying to manage better my downloads and packages. From previous
> posts to this list, I've concluded that I should always prefer an
> Mandrake RPM, but if a suitable RPM is not available then I should build
> an RPM from source tarball and install it that way, and that
> checkinstall is an easy way to do that (with thanks to Derek for that
> suggestion).
>
> If I decide to keep the source after building the RPM, it belongs in
> /usr/local/src -- correct? And is there any reason to save the source?
>
> Charlie suggested in an earlier post that "If you're building RPMs from
> tarballs you'll want to set up a build directory and add that as a local
> source as well. Then you can install with urpmi from there...", which
> sounds like a good idea. Yet checkinstall does not place the RPMs it
> creates in a single directory but rather in several subdirectories under
> /usr/src/RPM/RPMS/, classified by architecture. I am tempted to find how
> to change checkinstall's behavior to place RPMs in a single directory
> and follow Charlie's advice, but before I do I'd like to understand what
> the logic is in having RPMs for different architectures in different
> directories.
>
> This issue becomes more relevant considering that I also download
> pre-rolled RPMs and want to save them in the same place, and those RPMs
> come in different architectures (at the moment, I have RPMs for i386,
> i586, and noarch). It would be more convenient for me to have all my
> RPMs (both pre-rolled and those I rolled myself, regardless of
> architecture) in one place, and so be able to define one local source
> for urpmi rather than many.
>
> Perhaps this is all much ado about nothing, but I want to understand
> what is going on and why before I start messing things up or reinventing
> the wheel. All advice welcome.

I would suggest that if there is no available Mandrake RPM available for an 
application you want, then you should try rebuilding  a .src.rpm from Cooker 
before building from .tar.gz (if one exists)  Rebuilding Cooker RPMs for an 
earlier distro does not always work, but often does.

To rebuild an .src.rpm all you need do is :-
rpm -ivh application.src.rpm
This will install the source files in /usr/src/RPM/SOURCES, and the spec file 
in /usr/src/RPM/SPECS, then cd to /usr/src/RPM/SPECS and 
rpmbuild -ba application.spec
Providing you have all the correct compilers and development libraries 
installed a final RPM will end up in /usr/src/RPM/RPMS/i586

If you want your RPMs all in one location then why not make the different 
architecture folders symlinks to the same location?


derek
-- 
----------------------------------
www.jennings.homelinux.net
http://twiki.mdklinuxfaq.org


Want to buy your Pack or Services from MandrakeSoft? 
Go to http://www.mandrakestore.com

Reply via email to