how to create a powerpc64 poudriere jail ?

Jan Beich jbeich at vfemail.net
Sun May 22 19:58:23 UTC 2016


Kurt Jaeger <lists at opsec.eu> writes:

> Hi!
>
>> What is the correct way to create a powerpc64 poudriere jail ?
>> 
>> I've tried several versions of
>> 
>> poudriere jail -c -j p64 -a <arch> -m svn+ssh -v head
>> 
>> with arch as powerpc, ppc64, powerpc64/powerpc, to no avail.
>
> Ah, one more thing: I added the binmiscctl environment for ppc64, as
> described in
>
>   https://wiki.freebsd.org/QemuUserModeHowTo
>
> The problem is the correct name for binmiscctl and the correct <arch>
> for poudriere. That's what I'm missing.

qemu-user-static support for powerpc64 seems to be incomplete but
otherwise is supposed to work as follows. Only stuff represented on
pkg-fallout@ is known to work. aarch64 is also in a good shape but needs
devel/aarch64-binutils built with LDFLAGS+=-all-static copied inside jail.

freebsd-ppc@ folks may have a clue how to cross-build powerpc64 packages
without real hardware. If you're just looking for logs, see

https://lists.freebsd.org/pipermail/freebsd-ports/2016-April/102952.html

--
# run rc.d script that defines common targets for poudriere
$ service qemu_user_static onestart

# check desired target is defined
$ binmiscctl list
[...]
name: powerpc64
interpreter: /usr/local/bin/qemu-ppc64-static
flags: ENABLED USE_MASK
magic size: 20
magic offset: 0
magic: 0x7f 0x45 0x4c 0x46  0x01 0x02 0x01 0x00  0x00 0x00 0x00 0x00
       0x00 0x00 0x00 0x00  0x00 0x02 0x00 0x15
mask:  0xff 0xff 0xff 0xff  0xff 0xff 0xff 0x00  0xff 0xff 0xff 0xff
       0xff 0xff 0xff 0xff  0xff 0xfe 0xff 0xff
[...]

# get TARGET.TARGET_ARCH tuple for |-a| from the source
$ make targets -C/usr/src | sed '1d; y,/,.,' | fgrep powerpc64
    powerpc.powerpc64

# build a jail for the target
$ poudriere jail -cj head-powerpc64 -a powerpc.powerpc64 -m svn+ssh -v head
[...]
[00:41:56] ====>> Recording filesystem state for clean... done
[00:41:57] ====>> Jail head-powerpc64 head powerpc.powerpc64 is ready to be used

# check qemu-user-static can run target (static) binaries
$ /poudriere/jails/head-powerpc64/rescue/ls /var/empty

# start building various packages
$ poudriere bulk -j head-powerpc64 devel/gmake                                          ~
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 602 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20160522/da843157/attachment.sig>


More information about the freebsd-ports mailing list