fedora for ARM

Andy Green andy at warmcat.com
Wed Jun 6 08:54:08 UTC 2007


Ralf Corsepius wrote:
> On Wed, 2007-06-06 at 09:16 +0100, Andy Green wrote:
>> Ralf Corsepius wrote:
>>> On Wed, 2007-06-06 at 07:31 +0100, Andy Green wrote:
>>>> Manas Saksena wrote:
>>>>> Andy Green wrote:
>>>>>> Hans de Goede wrote:
>>>>>> I have rpm-packaged a bunch of apps for crosscompile (arm9 and avr32)
>>>>>> here
>>>>> Did you have to modify rpm/rpmbuild tools? Virtually, every Embedded
>>>>> Linux vendor has modified rpm to make it behave properly for
>>>>> cross-building etc. It would be a good idea if we can get this done
>>>>> right in upstream rpm.
>>>> No, nothing was needed to change in the build host rpmbuild, it works
>>>> fine with rpmbuild that comes from FC6 and FC7 as it is including using
>>>> rpmbuild --target to set the arch.  The spec files are just normal spec
>>>> files.
>>> This doesn't match at all with my experience.
>>>
>>> But .. could it be that you are not having redhat-rpm-config installed?
>>> At least on FC6 it screws up --target, produces invalid *debuginfo*.rpm
>>> for foreign object formats and many other details.
>> No it's installed, but --target works...
> 
> Sorry, it can't work, I am sure, because many details causing breakage
> are hard-coded into redhat-rpm-config. Not even building cross-compilers
> works correctly because redhat-rpm-config breaks things.
> (Cf. avr-binutils's and avr-gcc's specs in Fedora).

It works fine, and has done for over a year.  The http://rpm.octotux.org
repo is full of the fruits of it and in fact my mailserver runs on an
arm box with these packages, so this mail itself passes through the
results of such a cross build.  I think you're being a bit hasty with
the "can't work" there.

>>  well it works as far as setting
>> %{_target_cpu} goes which is pretty much all I ask of it.  Note you seem
>> to need to give an arch-dist-os triplet like this
> 
>> $ rpmbuild -ba --target=arm-octotux-linux mISDNuser-1.2.0.spec
>> Building target platforms: arm-octotux-linux
>> Building for target arm-octotux-linux
>> Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.76322
>> ...
>> + make CROSS=/opt/arm/bin/arm-linux- MISDNDIR=../mISDN-1.2.0
>> 'CFLAGS=-I/projects/octotux/packages/rpm/devel-filesystem-arm/usr/include
>>    -I/projects/octotux/packages/rpm/BUILD/mISDNuser-1.2.0/include
>> -I/opt/arm/include    -O3' CC=gcc
>> LDFLAGS=-L/projects/octotux/packages/rpm/devel-filesystem-arm/usr/lib
>> ...
> 
> And what is being produced? An *.i386.rpm or an *.arm.rpm?

...
Checking for unpackaged file(s): /usr/lib/rpm/check-files
/projects/octotux/packages/rpm/BUILD/mISDNuser-arm-root
Wrote: /projects/octotux/packages/rpm/SRPMS/mISDNuser-1.2.0-163.src.rpm
Wrote: /projects/octotux/packages/rpm/RPMS/arm/mISDNuser-1.2.0-163.arm.rpm
Wrote:
/projects/octotux/packages/rpm/RPMS/arm/mISDNuser-devel-1.2.0-163.arm.rpm
Wrote:
/projects/octotux/packages/rpm/RPMS/arm/mISDNuser-lib-1.2.0-163.arm.rpm
Wrote:
/projects/octotux/packages/rpm/RPMS/arm/mISDNuser-debuginfo-1.2.0-163.arm.rpm

-Andy




More information about the fedora-devel-list mailing list