[Clfs-support] CLFS RPM project

Satish Patel satish at linuxbug.org
Sat Sep 27 07:02:13 PDT 2008


Regards,

Satish Patel


Quoting Jonathan Norman <jonathan at bluesquarelinux.co.uk>:

>
> On 27 Sep 2008, at 06:30, Michael A. Peters wrote:
>
>> RPM CLFS project
>>
>> Just thought I'd share with the list what I'm currently working on.
>> I'm working on RPM boot strapping both i386 and x86_64 builds of CLFS.
>>
>> Initially I was working with multiarch but that was the wrong   
>> approach, the goal is to end up with a set of i386 and x86_64 RPMs   
>> that can be used in a yum package repository for building   
>> additional software in mock. Mock is a chroot build tool that   
>> assists in the creation of pristine packages that do not link   
>> against what you do not specifically want them to link against, and  
>>  that can be important in long term system maintenance.
>>
>> The problem with using multilib was glibc and gcc - I could build   
>> i386 packages that in most cases were just dandy, but the resulting  
>>  i686 glibc packages were not equivalent to x86_64, and gcc - it   
>> would build both 32-bit and 64-bit from the single make command   
>> when multiarch is not disabled in its configure, and that's just   
>> not suitable for producing pristine i386 and x86_64 packages.
>>
>> My new approach is "pure" 32 bit almost identical to the CLFS book   
>> and a "pure" 64-bit with some multiarch book patches so that it   
>> properly use lib64 and will allow for the eventual installation of   
>> 32-bit RPMs.
>>
>> I may not end up with a multiarch C compiler, I don't know enough   
>> about gcc to know if disabling multiarch at configure but   
>> installing the 32-bit libraries will allow 32-bit compilation from   
>> 64 bit Linux, but I should at least be able to run 32-bit libraries  
>>  and programs inside 64-bit Linux. I really only need that for a   
>> handful of programs (IE google earth, Adobe Flash, and 32-bit TeX   
>> Live - I suppose I could use 64-bit TeX Live but hear 32-bit is far  
>>  more stable, or at least was a few years ago).
>>
>> Most of the RPM packages I am writing from scratch, as close to the  
>>  CLFS/CBLFS build instructions as I can stay. There are a few minor  
>>  deviations, IE using /etc/ld.so.conf.d/ is so much easier for RPM   
>> than a single file. Generally with RPMs that result in both   
>> binaries and libraries, I'm putting the libs in a sub package so   
>> that it's easier to install the 32-bit version in 64-bit. RPM   
>> allegedly does decent job of handling that, when both arches own a   
>> file the 64-bit take priority, but I think it is cleaner to just   
>> not have it an issue. I'm also using rpmlint to verify the   
>> integrity of the packaging as much as possible.
>>
>> perl - I am deviating from the CLFS perl instructions, so that   
>> there is a common place for 32-bit and 64-bit to look for non arch   
>> specific perl modules. The 32-bit is almost the same but 64-bit has  
>>  some extra args to make it look in the same place that 32-bit perl  
>>  puts noarch stuff. I may need to do the same for Python and Ruby   
>> but I haven't looked into them yet.
>>
>> Anyway - it's a blast, and I'm learning a lot - I'm doing this for   
>> me, but if anyone else is interested I'd love to share. I'm not   
>> sharing any packages, but rpm spec files for packages I can share.   
>> I may try to put together a tips page for installing rpm itself -   
>> it's not *too* hard, but if you want debug package support you need  
>>  elfutils and it seems the newer versions of elfutils depend upon   
>> patches to the fedora/redhat toolchain (compilation ends up stuck   
>> in what appears to be a loop with cc1 taking 100% of the CPU and   
>> never finishing the task it gets stuck in) - but I found a version   
>> that both builds and isn't too old for modern RPM. I don't think   
>> I'll be ready to share anything for a few weeks though, I highly   
>> suspect I'll fubar the system a few times before I get things right  
>>  - I already did once with glibc ... (that seems to be resolved now)
>>
>> I've almost got the i386 build bootstrapped, then it's time to test  
>>  the spec files on 64-bit ... and then get mock installed and  
>> working.
>> _______________________________________________
>> Clfs-support mailing list
>> Clfs-support at lists.cross-lfs.org
>> http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org
>
> I have made  RPMS for the LFS book and created multi-arch spec files.
> The installation of these RPMS onto a blank hard drive is done with
> shell scripts. I have not come across a problem doing multilib because
> I have made it for i686, UltraSPARC and PowerPC G4, there for no need
> for multilib yet. Good luck with it tho :)
>
> Cosmo~
>
> _______________________________________________
> Clfs-support mailing list
> Clfs-support at lists.cross-lfs.org
> http://lists.cross-lfs.org/listinfo.cgi/clfs-support-cross-lfs.org

Hey, I have installed LFS but now i want to create it like distro  
means its boot and ask for installation like other distros Redhat ,  
CentOS etc... so How to start and how to i create it ?? also i want to  
know how to create RPM or how to build RPM from cross-toolchain i will  
appreciate if anybody want to share anything regarding this with me..





More information about the Clfs-support mailing list