Hey!
According to missing mlx5 dependency - i have the same problem on my Ubuntu system.
You should check full meson build error logs.
In my case the error was in missing libmlx5 library

> Run-time dependency libmlx5 found: NO (tried pkgconfig)

Installing the libibverbs-dev package resolved the issue!

ср, 20 июл. 2022 г. в 11:38, Mark de Roussier <mark@hitomi-broadcast.tv>:
Hi folk,

I'm just starting to experiment with DPDK, but I'm noticing some build issues. I'm using Fedora 36, and DPDK 21.11.1, and following the build instructions at https://core.dpdk.org/doc/quick-start/, building all examples ( meson -Dexamples=all build ).

The first problem is that the build is not finding certain libraries which are installed and known about by pkg-config.

>[mderouss@mark-dt ~]$ pkg-config --modversion jansson
>2.13.1
>[mderouss@mark-dt ~]$ pkg-config --modversion numa
>2.0.14
>[mderouss@mark-dt ~]$ pkg-config --modversion libarchive
>3.5.3

However, using LIBRARY_PATH to specify their location appears to resolve the problem. There is a potentially relevant error in the meson log :

    [Errno 21] Is a directory: '/home/mderouss/Projects/dpdk/dpdk-stable-21.11.1/buildtools/pkg-config'
    Unusable script '/home/mderouss/Projects/dpdk/dpdk-stable-21.11.1/buildtools/pkg-config'
    Program pkg-config found: YES (/usr/bin/pkg-config)

Is this expected behaviour, i.e. LIBRARY_PATH is expected to be set ?

The more taxing problem is that I am using ( for this experiment ) a Mellanox NIC :

>[mderouss@mark-dt ~]$ lspci | grep Mellanox
>06:00.0 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]
>06:00.1 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]

The meson log reports missing dependencies. It isn't clear to me how I am supposed to satisfy the unresolved dependencies with respect to Mellanox related libraries, in particular the 'missing internal dependency' ? The meson log reports the following, but I think I'm only interested in the mlx ones :

    drivers:
          common/mvep:  missing dependency, "libmusdk"
          common/mlx5:  missing dependency, "mlx5"
          net/mlx4:     missing dependency, "mlx4"
          net/mlx5:     missing internal dependency, "common_mlx5"
          net/mvneta:   missing dependency, "libmusdk"
          net/mvpp2:    missing dependency, "libmusdk"
          net/nfb:      missing dependency, "libnfb"
          raw/ioat:     replaced by dmadev drivers
          crypto/armv8: missing dependency, "libAArch64crypto"
          crypto/mlx5:  missing internal dependency, "common_mlx5"
          crypto/mvsam: missing dependency, "libmusdk"
          compress/isal:      missing dependency, "libisal"
          compress/mlx5:      missing internal dependency, "common_mlx5"
          regex/mlx5:   missing internal dependency, "common_mlx5"
          vdpa/mlx5:    missing internal dependency, "common_mlx5"
          gpu/cuda:     missing dependency, "cuda.h"

I read DPDK documentation which seems to suggest that support for Mellanox NICs is somehow 'built in' to DPDK, but this does not appear to be the case ?

The documentation refers to a library 'librte_common_mlx5', but does not explain where this can be found. I've looked at downloads from NVIDIA, but even so I am not clear what I need. I've installed the 'RDMA Core Userspace Library' in my system as they are available from the distro, but I'm not sure if these are even relevant :

>[mderouss@mark-dt ~]$ pkg-config --list-all | grep mlx
>libmlx4                        libmlx4 - RDMA Core Userspace Library
>libmlx5                        libmlx5 - RDMA Core Userspace Library

Could someone possibly clarify what I actually need, and where I should get it from ?

Regards,
Mark de Roussier