[dpdk-dev] [PATCH v8 5/5] doc: add aarch32 build guidance

Phil Yang Phil.Yang at arm.com
Wed Aug 26 05:12:51 CEST 2020


Aaron Conole <aconole at redhat.com> writes:

> Subject: Re: [PATCH v8 5/5] doc: add aarch32 build guidance
> 
> Juraj Linkeš <juraj.linkes at pantheon.tech> writes:
> 
> > From: Phil Yang <phil.yang at arm.com>
> >
> > Add cross-compiling guidance for 32-bit aarch32 DPDK on aarch64 host.
> >
> > Signed-off-by: Phil Yang <phil.yang at arm.com>
> > ---
> >  .../linux_gsg/cross_build_dpdk_for_arm64.rst  | 30 ++++++++++++++-----
> >  1 file changed, 23 insertions(+), 7 deletions(-)
> >
> > diff --git a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > index c5875a6d5..07085e3ea 100644
> > --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > @@ -1,15 +1,16 @@
> >  ..  SPDX-License-Identifier: BSD-3-Clause
> >      Copyright(c) 2018 ARM Corporation.
> >
> > -Cross compile DPDK for ARM64
> > -============================
> > -This chapter describes how to cross compile DPDK for ARM64 from x86
> build hosts.
> > +Cross compile DPDK for aarch64 and aarch32
> > +==========================================
> > +This chapter describes how to cross compile DPDK for aarch64 from x86
> build hosts and compile
> > +32-bit aarch32 DPDK from aarch64 build hosts.
> >
> >  .. note::
> >
> > -   Whilst it is recommended to natively build DPDK on ARM64 (just
> > -   like with x86), it is also possible to cross-build DPDK for ARM64. An
> > -   ARM64 cross compile GNU toolchain is used for this.
> > +   Whilst it is recommended to natively build DPDK on aarch64 (just
> > +   like with x86), it is also possible to cross-build DPDK for aarch64.
> > +   An aarch64 cross compile GNU toolchain is used for this.
> >
> >  Obtain the cross tool chain
> >  ---------------------------
> > @@ -88,18 +89,33 @@ To install it in Ubuntu::
> >
> >     sudo apt-get install pkg-config-aarch64-linux-gnu
> >
> > +.. note::
> > +
> > +    Some aarch64 platforms support EL0 aarch32 mode, which means the
> 32-bit aarch32 applications
> > +    can run on aarch64. The armhf architecture toolchain ``gcc-arm-linux-
> gnueabihf`` is required
> > +    for aarch32 on aarch64. To install it in Ubuntu::
> > +
> > +       sudo dpkg --add-architecture armhf
> > +       sudo apt-get update
> > +       sudo apt-get install -y gcc gcc-arm-linux-gnueabihf libc6:armhf make
> binutils
> > +
> 
> Is 'make' still needed?  I don't run Ubuntu, so I'm not sure.


No, both 'GCC' and 'make' are not mandatory in this case.
Will update it in the next version.


> 
> >  To cross-compile DPDK on a desired target machine we can use the
> following
> >  command::
> >
> >  	meson cross-build --cross-file <target_machine_configuration>
> >  	ninja -C cross-build
> >
> > -For example if the target machine is arm64 we can use the following
                                                                                      ^^^ Will use 'users' instead               


> > +For example if the target machine is aarch64 we can use the following
                                                                                         ^^^ Will use 'users' instead

> >  command::
> >
> >  	meson arm64-build --cross-file config/arm/arm64_armv8_linux_gcc
> >  	ninja -C arm64-build
> >
> > +If the target machine is aarch32 we can use the following command::
                                                                   ^^^ Will use 'users' instead

> > +
> > +	meson arm32-build --cross-file config/arm/arm32_armv8a_linux_gcc
> > +	ninja -C arm32-build
> > +
> >  Configure and Cross Compile DPDK using Make
> >  -------------------------------------------
> >  To configure a build, choose one of the target configurations, like arm64-
> dpaa-linux-gcc and arm64-thunderx-linux-gcc.



More information about the dev mailing list