[2/2] doc: add pkg-config-aarch64-linux-gnu as a prerequisite
Checks
Commit Message
The package pkg-config-aarch64-linux-gnu is required with meson for
detecting dependencies installed in nonstandard paths.
Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
---
doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 8 ++++++++
1 file changed, 8 insertions(+)
Comments
On Tue, Nov 26, 2019 at 08:14:25AM +0000, Ali Alnubani wrote:
> The package pkg-config-aarch64-linux-gnu is required with meson for
> detecting dependencies installed in nonstandard paths.
>
> Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
> ---
> doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> 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 e799b0ba4..f00f9b130 100644
> --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> @@ -122,6 +122,14 @@ To compile for non-NUMA targets, without compiling the kernel modules, use the f
> Meson Cross Compiling DPDK
> --------------------------
>
> +Meson depends on pkgconfig to find the dependencies that are installed in
> +nonstandard paths. The package `pkg-config-aarch64-linux-gnu` is required in
> +this case. To install it in Ubuntu:
> +
> +.. code-block:: console
> +
> + sudo apt-get install pkg-config-aarch64-linux-gnu
> +
> To cross-compile DPDK on a desired target machine we can use the following
> command::
Is there a package for Fedora or similar Redhat-derived distros?
Hi Bruce,
> -----Original Message-----
> From: Bruce Richardson <bruce.richardson@intel.com>
> Sent: Tuesday, November 26, 2019 11:52 AM
> To: Ali Alnubani <alialnu@mellanox.com>
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 2/2] doc: add pkg-config-aarch64-linux-gnu
> as a prerequisite
>
> On Tue, Nov 26, 2019 at 08:14:25AM +0000, Ali Alnubani wrote:
> > The package pkg-config-aarch64-linux-gnu is required with meson for
> > detecting dependencies installed in nonstandard paths.
> >
> > Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
> > ---
> > doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > 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 e799b0ba4..f00f9b130 100644
> > --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > @@ -122,6 +122,14 @@ To compile for non-NUMA targets, without
> > compiling the kernel modules, use the f Meson Cross Compiling DPDK
> > --------------------------
> >
> > +Meson depends on pkgconfig to find the dependencies that are
> > +installed in nonstandard paths. The package
> > +`pkg-config-aarch64-linux-gnu` is required in this case. To install it in
> Ubuntu:
> > +
> > +.. code-block:: console
> > +
> > + sudo apt-get install pkg-config-aarch64-linux-gnu
> > +
> > To cross-compile DPDK on a desired target machine we can use the
> > following
> > command::
>
> Is there a package for Fedora or similar Redhat-derived distros?
I don't think it's available. Should I add instructions on how to cross build it instead of the apt-get example?
Thanks,
Ali
On Tue, Nov 26, 2019 at 10:41:08AM +0000, Ali Alnubani wrote:
> Hi Bruce,
>
> > -----Original Message-----
> > From: Bruce Richardson <bruce.richardson@intel.com>
> > Sent: Tuesday, November 26, 2019 11:52 AM
> > To: Ali Alnubani <alialnu@mellanox.com>
> > Cc: dev@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH 2/2] doc: add pkg-config-aarch64-linux-gnu
> > as a prerequisite
> >
> > On Tue, Nov 26, 2019 at 08:14:25AM +0000, Ali Alnubani wrote:
> > > The package pkg-config-aarch64-linux-gnu is required with meson for
> > > detecting dependencies installed in nonstandard paths.
> > >
> > > Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
> > > ---
> > > doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 8 ++++++++
> > > 1 file changed, 8 insertions(+)
> > >
> > > 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 e799b0ba4..f00f9b130 100644
> > > --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > > +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > > @@ -122,6 +122,14 @@ To compile for non-NUMA targets, without
> > > compiling the kernel modules, use the f Meson Cross Compiling DPDK
> > > --------------------------
> > >
> > > +Meson depends on pkgconfig to find the dependencies that are
> > > +installed in nonstandard paths. The package
> > > +`pkg-config-aarch64-linux-gnu` is required in this case. To install it in
> > Ubuntu:
> > > +
> > > +.. code-block:: console
> > > +
> > > + sudo apt-get install pkg-config-aarch64-linux-gnu
> > > +
> > > To cross-compile DPDK on a desired target machine we can use the
> > > following
> > > command::
> >
> > Is there a package for Fedora or similar Redhat-derived distros?
>
> I don't think it's available. Should I add instructions on how to cross build it instead of the apt-get example?
>
I think you might need both. Distro-instructions is probably best, but
there are a lot of people not using Ubuntu, I suspect.
Following patch 1, if pkg-config is added to all the cross-build files,
does that prevent previously working cross-builds from passing due to the
lack of the pkg-config package? Do the travis jobs need updating, for
example?
/Bruce
> -----Original Message-----
> From: Bruce Richardson <bruce.richardson@intel.com>
> Sent: Tuesday, November 26, 2019 2:01 PM
> To: Ali Alnubani <alialnu@mellanox.com>
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 2/2] doc: add pkg-config-aarch64-linux-gnu
> as a prerequisite
>
> On Tue, Nov 26, 2019 at 10:41:08AM +0000, Ali Alnubani wrote:
> > Hi Bruce,
> >
> > > -----Original Message-----
> > > From: Bruce Richardson <bruce.richardson@intel.com>
> > > Sent: Tuesday, November 26, 2019 11:52 AM
> > > To: Ali Alnubani <alialnu@mellanox.com>
> > > Cc: dev@dpdk.org
> > > Subject: Re: [dpdk-dev] [PATCH 2/2] doc: add
> > > pkg-config-aarch64-linux-gnu as a prerequisite
> > >
> > > On Tue, Nov 26, 2019 at 08:14:25AM +0000, Ali Alnubani wrote:
> > > > The package pkg-config-aarch64-linux-gnu is required with meson
> > > > for detecting dependencies installed in nonstandard paths.
> > > >
> > > > Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
> > > > ---
> > > > doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 8 ++++++++
> > > > 1 file changed, 8 insertions(+)
> > > >
> > > > 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 e799b0ba4..f00f9b130 100644
> > > > --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > > > +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > > > @@ -122,6 +122,14 @@ To compile for non-NUMA targets, without
> > > > compiling the kernel modules, use the f Meson Cross Compiling
> > > > DPDK
> > > > --------------------------
> > > >
> > > > +Meson depends on pkgconfig to find the dependencies that are
> > > > +installed in nonstandard paths. The package
> > > > +`pkg-config-aarch64-linux-gnu` is required in this case. To
> > > > +install it in
> > > Ubuntu:
> > > > +
> > > > +.. code-block:: console
> > > > +
> > > > + sudo apt-get install pkg-config-aarch64-linux-gnu
> > > > +
> > > > To cross-compile DPDK on a desired target machine we can use the
> > > > following
> > > > command::
> > >
> > > Is there a package for Fedora or similar Redhat-derived distros?
> >
> > I don't think it's available. Should I add instructions on how to cross build it
> instead of the apt-get example?
> >
> I think you might need both. Distro-instructions is probably best, but there
> are a lot of people not using Ubuntu, I suspect.
>
> Following patch 1, if pkg-config is added to all the cross-build files, does that
> prevent previously working cross-builds from passing due to the lack of the
> pkg-config package? Do the travis jobs need updating, for example?
Cross compiling pkg-config from source requires glib, which in turn requires other packages (libffi and pcre).
Do we want to add instructions to cross build that dependency tree?
I opened a pull request to the Github mirror to make sure I didn't break the CI:
https://github.com/DPDK/dpdk/pull/14
If the binary 'aarch64-linux-gnu-pkg-config' isn't found, Meson seems to just show the following warnings, but it doesn't fail with error:
'''
Did not find pkg-config by name 'aarch64-linux-gnu-pkg-config'
Found Pkg-config: NO
'''
I'll send v2 with an additional patch to add the package to the list of requirements for Travis's environment.
>
> /Bruce
- Ali
On Wed, Nov 27, 2019 at 03:54:55PM +0000, Ali Alnubani wrote:
> > -----Original Message-----
> > From: Bruce Richardson <bruce.richardson@intel.com>
> > Sent: Tuesday, November 26, 2019 2:01 PM
> > To: Ali Alnubani <alialnu@mellanox.com>
> > Cc: dev@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH 2/2] doc: add pkg-config-aarch64-linux-gnu
> > as a prerequisite
> >
> > On Tue, Nov 26, 2019 at 10:41:08AM +0000, Ali Alnubani wrote:
> > > Hi Bruce,
> > >
> > > > -----Original Message-----
> > > > From: Bruce Richardson <bruce.richardson@intel.com>
> > > > Sent: Tuesday, November 26, 2019 11:52 AM
> > > > To: Ali Alnubani <alialnu@mellanox.com>
> > > > Cc: dev@dpdk.org
> > > > Subject: Re: [dpdk-dev] [PATCH 2/2] doc: add
> > > > pkg-config-aarch64-linux-gnu as a prerequisite
> > > >
> > > > On Tue, Nov 26, 2019 at 08:14:25AM +0000, Ali Alnubani wrote:
> > > > > The package pkg-config-aarch64-linux-gnu is required with meson
> > > > > for detecting dependencies installed in nonstandard paths.
> > > > >
> > > > > Signed-off-by: Ali Alnubani <alialnu@mellanox.com>
> > > > > ---
> > > > > doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst | 8 ++++++++
> > > > > 1 file changed, 8 insertions(+)
> > > > >
> > > > > 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 e799b0ba4..f00f9b130 100644
> > > > > --- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > > > > +++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst
> > > > > @@ -122,6 +122,14 @@ To compile for non-NUMA targets, without
> > > > > compiling the kernel modules, use the f Meson Cross Compiling
> > > > > DPDK
> > > > > --------------------------
> > > > >
> > > > > +Meson depends on pkgconfig to find the dependencies that are
> > > > > +installed in nonstandard paths. The package
> > > > > +`pkg-config-aarch64-linux-gnu` is required in this case. To
> > > > > +install it in
> > > > Ubuntu:
> > > > > +
> > > > > +.. code-block:: console
> > > > > +
> > > > > + sudo apt-get install pkg-config-aarch64-linux-gnu
> > > > > +
> > > > > To cross-compile DPDK on a desired target machine we can use the
> > > > > following
> > > > > command::
> > > >
> > > > Is there a package for Fedora or similar Redhat-derived distros?
> > >
> > > I don't think it's available. Should I add instructions on how to cross build it
> > instead of the apt-get example?
> > >
> > I think you might need both. Distro-instructions is probably best, but there
> > are a lot of people not using Ubuntu, I suspect.
> >
> > Following patch 1, if pkg-config is added to all the cross-build files, does that
> > prevent previously working cross-builds from passing due to the lack of the
> > pkg-config package? Do the travis jobs need updating, for example?
>
> Cross compiling pkg-config from source requires glib, which in turn requires other packages (libffi and pcre).
> Do we want to add instructions to cross build that dependency tree?
>
> I opened a pull request to the Github mirror to make sure I didn't break the CI:
> https://github.com/DPDK/dpdk/pull/14
> If the binary 'aarch64-linux-gnu-pkg-config' isn't found, Meson seems to just show the following warnings, but it doesn't fail with error:
> '''
> Did not find pkg-config by name 'aarch64-linux-gnu-pkg-config'
> Found Pkg-config: NO
> '''
>
> I'll send v2 with an additional patch to add the package to the list of requirements for Travis's environment.
> >
So long as is doesn't break something that was previously working I'm ok
with this set.
@@ -122,6 +122,14 @@ To compile for non-NUMA targets, without compiling the kernel modules, use the f
Meson Cross Compiling DPDK
--------------------------
+Meson depends on pkgconfig to find the dependencies that are installed in
+nonstandard paths. The package `pkg-config-aarch64-linux-gnu` is required in
+this case. To install it in Ubuntu:
+
+.. code-block:: console
+
+ sudo apt-get install pkg-config-aarch64-linux-gnu
+
To cross-compile DPDK on a desired target machine we can use the following
command::