DPDK usage discussions
 help / color / mirror / Atom feed
* Struggling with meson in dpdk 21.11
@ 2024-09-16 17:42 David Aldrich
  2024-09-16 19:19 ` Stephen Hemminger
  0 siblings, 1 reply; 5+ messages in thread
From: David Aldrich @ 2024-09-16 17:42 UTC (permalink / raw)
  To: users

Hi
I am upgrading from dpdk 19.11 to 21.11.  With 19.11 I built dpdk with
usertools/dpdk-setup.sh option 44, which built dpdk for x64 on Linux
and installed it to:

/opt/intel/dpdk-stable-19.11.14/x86_64-native-linux-gcc/

I want to reproduce similar behaviour in 21.11 as I may have several
versions of dpdk installed.

My build procedure is:

$ cd /opt/intel/dpdk-stable-21.11.7
$ sudo meson -Dexamples=all -Dprefix="/"
-Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,net/mvpp2,net/nfb,net/mlx4,net/mlx5,\
crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,\
crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,\
crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda build
$ cd build
$ sudo ninja
$ sudo meson install --destdir=../x86_64-native-linux-gcc

The result is:

$ ls /opt/intel/dpdk-stable-21.11.7/x86_64-native-linux-gcc/
bin  include  lib  share

which is good, but the examples have not been built and the folders in
the build directory are empty:

$ ls /opt/intel/dpdk-stable-21.11.7/build/examples/l2fwd
$

Why are the examples not built?

Best regards
David

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Struggling with meson in dpdk 21.11
  2024-09-16 17:42 Struggling with meson in dpdk 21.11 David Aldrich
@ 2024-09-16 19:19 ` Stephen Hemminger
  0 siblings, 0 replies; 5+ messages in thread
From: Stephen Hemminger @ 2024-09-16 19:19 UTC (permalink / raw)
  To: David Aldrich; +Cc: users

On Mon, 16 Sep 2024 18:42:52 +0100
David Aldrich <david.aldrich.ntml@gmail.com> wrote:

> $ cd /opt/intel/dpdk-stable-21.11.7
> $ sudo meson -Dexamples=all -Dprefix="/"
> -Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,net/mvpp2,net/nfb,net/mlx4,net/mlx5,\
> crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,\
> crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,\
> crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda build
> $ cd build
> $ sudo ninja

Don't build as root. Use:
 $ ninja -C build

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Struggling with meson in dpdk 21.11
  2024-09-17 20:21   ` Aldrin
@ 2024-09-19 15:44     ` David Aldrich
  0 siblings, 0 replies; 5+ messages in thread
From: David Aldrich @ 2024-09-19 15:44 UTC (permalink / raw)
  To: Aldrin; +Cc: users

Thanks for your help. I seem to have a working solution now.

On Tue, Sep 17, 2024 at 9:21 PM Aldrin <akmontan@ucsc.edu> wrote:
>
> Actually, I misunderstood destdir and some of the other context, my apologies.
>
> I do think that it makes more sense to use "x86_64-native-linux-gcc" as a prefix and "/opt/intel/dpdk-stable-21.11.7" as a destdir, but that seems unlikely to solve the problem.
>
> maybe you can redirect the output of compilation to a log file and share its output?
>
> On Tue, Sep 17, 2024 at 12:40 PM Aldrin <akmontan@ucsc.edu> wrote:
>>
>> > > $ cd /opt/intel/dpdk-stable-21.11.7
>> > > $ sudo meson -Dexamples=all -Dprefix="/"
>> > > -Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,net/mvpp2,net/nfb,net/mlx4,net/mlx5,\
>> > > crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,\
>> > > crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,\
>> > > crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda build
>> > > $ cd build
>> > > $ sudo ninja
>>
>> > Don't build as root. Use:
>> >  $ ninja -C build
>>
>> I'm not sure this will address the issue, but you should avoid doing most of these things as root.
>>
>> `export INSTALL_PREFIX="/x86_64-native-linux-gcc"`
>> `meson setup build`
>> `meson configure -Dexamples=all \
>>                  -Dprefix="${INSTALL_PREFIX}"   \
>>                  -Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,net/mvpp2,net/nfb,net/mlx4,net/mlx5,crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda \
>>                  build`
>> `meson compile -C build`
>> `meson install -C build`
>>
>> where I do notice that you're setting some conflicting options is that you have `-Dprefix="/"` when configuring and you also have `--destdir=../x86_64-native-linux-gcc` when installing. I'm not sure why you would set these to different paths unless you're essentially on a root-only system and you are doing everything from the root directory?
>>
>> In my example above, I set a variable, INSTALL_PREFIX, and use that in the configure step instead. Then, when you install, just let it install to the prefix that you specified. Presumably, this will ensure that all paths are correct whereas setting a different destdir from the prefix could potentially mismatch some paths.
>>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Struggling with meson in dpdk 21.11
  2024-09-17 19:40 ` Aldrin
@ 2024-09-17 20:21   ` Aldrin
  2024-09-19 15:44     ` David Aldrich
  0 siblings, 1 reply; 5+ messages in thread
From: Aldrin @ 2024-09-17 20:21 UTC (permalink / raw)
  To: users

[-- Attachment #1: Type: text/plain, Size: 2525 bytes --]

Actually, I misunderstood destdir and some of the other context, my
apologies.

I do think that it makes more sense to use "x86_64-native-linux-gcc" as a
prefix and "/opt/intel/dpdk-stable-21.11.7" as a destdir, but that seems
unlikely to solve the problem.

maybe you can redirect the output of compilation to a log file and share
its output?

On Tue, Sep 17, 2024 at 12:40 PM Aldrin <akmontan@ucsc.edu> wrote:

> > > $ cd /opt/intel/dpdk-stable-21.11.7
> > > $ sudo meson -Dexamples=all -Dprefix="/"
> > >
> -Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,net/mvpp2,net/nfb,net/mlx4,net/mlx5,\
> > >
> crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,\
> > >
> crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,\
> > > crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda
> build
> > > $ cd build
> > > $ sudo ninja
>
> > Don't build as root. Use:
> >  $ ninja -C build
>
> I'm not sure this will address the issue, but you should avoid doing most
> of these things as root.
>
> `export INSTALL_PREFIX="/x86_64-native-linux-gcc"`
> `meson setup build`
> `meson configure -Dexamples=all \
>                  -Dprefix="${INSTALL_PREFIX}"   \
>                  -Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,
> net/mvpp2,net/nfb,net/mlx4,net/mlx5,crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda
> \
>                  build`
> `meson compile -C build`
> `meson install -C build`
>
> where I do notice that you're setting some conflicting options is that you
> have `-Dprefix="/"` when configuring and you also have
> `--destdir=../x86_64-native-linux-gcc` when installing. I'm not sure why
> you would set these to different paths unless you're essentially on a
> root-only system and you are doing everything from the root directory?
>
> In my example above, I set a variable, INSTALL_PREFIX, and use that in the
> configure step instead. Then, when you install, just let it install to the
> prefix that you specified. Presumably, this will ensure that all paths are
> correct whereas setting a different destdir from the prefix could
> potentially mismatch some paths.
>
>

[-- Attachment #2: Type: text/html, Size: 4220 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Struggling with meson in dpdk 21.11
       [not found] <mailman.3759.1726527514.951.users@dpdk.org>
@ 2024-09-17 19:40 ` Aldrin
  2024-09-17 20:21   ` Aldrin
  0 siblings, 1 reply; 5+ messages in thread
From: Aldrin @ 2024-09-17 19:40 UTC (permalink / raw)
  To: users

[-- Attachment #1: Type: text/plain, Size: 2014 bytes --]

> > $ cd /opt/intel/dpdk-stable-21.11.7
> > $ sudo meson -Dexamples=all -Dprefix="/"
> >
-Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,net/mvpp2,net/nfb,net/mlx4,net/mlx5,\
> >
crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,\
> >
crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,\
> > crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda build
> > $ cd build
> > $ sudo ninja

> Don't build as root. Use:
>  $ ninja -C build

I'm not sure this will address the issue, but you should avoid doing most
of these things as root.

`export INSTALL_PREFIX="/x86_64-native-linux-gcc"`
`meson setup build`
`meson configure -Dexamples=all \
                 -Dprefix="${INSTALL_PREFIX}"   \
                 -Ddisable_drivers=common/mvep,common/mlx5,net/mvneta,
net/mvpp2,net/nfb,net/mlx4,net/mlx5,crypto/qat,crypto/aesni_gcm,crypto/aesni_mb,crypto/armv8,crypto/ccp,crypto/kasumi,crypto/mvsam,crypto/openssl,crypto/snow3g,crypto/zuc,compress/isal,regex/mlx5,vdpa/mlx5,net/pcap,net/szedata2,raw/ifpga,net/af_xdp,net/ipn3ke,crypto/ipsec_mb,crypto/ipsec_mb,crypto/mlx5,compress/mlx5,gpu/cuda
\
                 build`
`meson compile -C build`
`meson install -C build`

where I do notice that you're setting some conflicting options is that you
have `-Dprefix="/"` when configuring and you also have
`--destdir=../x86_64-native-linux-gcc` when installing. I'm not sure why
you would set these to different paths unless you're essentially on a
root-only system and you are doing everything from the root directory?

In my example above, I set a variable, INSTALL_PREFIX, and use that in the
configure step instead. Then, when you install, just let it install to the
prefix that you specified. Presumably, this will ensure that all paths are
correct whereas setting a different destdir from the prefix could
potentially mismatch some paths.

[-- Attachment #2: Type: text/html, Size: 3438 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-09-19 15:44 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-09-16 17:42 Struggling with meson in dpdk 21.11 David Aldrich
2024-09-16 19:19 ` Stephen Hemminger
     [not found] <mailman.3759.1726527514.951.users@dpdk.org>
2024-09-17 19:40 ` Aldrin
2024-09-17 20:21   ` Aldrin
2024-09-19 15:44     ` David Aldrich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).