[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Cross compiling rpm packages


msnitzer@lnxi.com a écrit:

Ok so you've done the hard part (actually creating the cross compiler
environment); now you just need to accept that rpm can't read your mind
and write your own custom rpmmacros to accomplish what you want:


%{?_with_ee: %{expand: %%define mytarget ee}}
# similarly: %{?_with_ee: %{expand: %%define mytarget mipsEEel-linux}}
./configure --host=%{mytarget}

so you'd invoke rpmbuild with something like:
rpmbuild -ba --with ee <foo>.spec

Thanks! But now it creates a cross compiled package called <app-version>.i386.rpm
instead of <app-version>.mipsel.rpm, which is not a good thing :(

Instead I got this to work nicely:

%ifarch mipsel
./configure --prefix=/usr --host=ee
./configure --prefix=/usr

And doing 'rpm -ta <app>.tar.gz --target mipsel', which is basicly what I want :)
(I have yet to check if this builds ok on the Playstation itself)

But when I tried to install the package I got this:
error: failed dependencies:
rpmlib(PayloadFilesHavePrefix) <= 4.0-1 is needed by advent-
rpmlib(CompressedFileNames) <= 3.0.4-1 is needed by advent-

The version of rpm on the Playstation is 3.0.4, so I don't understand the second line!
And is there a way to make the package compatible with rpm 3.0.4?
I'm using RedHat 7.3 vanilla rpm, 4.0.4.

The --with flag does not seem to be documented in the rpmbuild man page...

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []