<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Hi folk,
<div><br>
</div>
<div>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 ).
</div>
<div><br>
</div>
<div>The first problem is that the build is not finding certain libraries which are installed and known about by pkg-config.
</div>
<div><br>
</div>
<div>>[mderouss@mark-dt ~]$ pkg-config --modversion jansson</div>
<div>>2.13.1</div>
<div>>[mderouss@mark-dt ~]$ pkg-config --modversion numa</div>
<div>>2.0.14</div>
<div>>[mderouss@mark-dt ~]$ pkg-config --modversion libarchive</div>
<div>>3.5.3</div>
<div><br>
</div>
<div>However, using LIBRARY_PATH to specify their location appears to resolve the problem. There is a potentially relevant error in the meson log :</div>
<div><br>
</div>
<div>    [Errno 21] Is a directory: '/home/mderouss/Projects/dpdk/dpdk-stable-21.11.1/buildtools/pkg-config'</div>
<div>    Unusable script '/home/mderouss/Projects/dpdk/dpdk-stable-21.11.1/buildtools/pkg-config'</div>
<div>    Program pkg-config found: YES (/usr/bin/pkg-config)</div>
<div><br>
</div>
<div>Is this expected behaviour, i.e. LIBRARY_PATH is expected to be set ? </div>
<div><br>
</div>
<div>The more taxing problem is that I am using ( for this experiment ) a Mellanox NIC :</div>
<div><br>
</div>
<div>>[mderouss@mark-dt ~]$ lspci | grep Mellanox</div>
<div>>06:00.0 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]</div>
<div>>06:00.1 Ethernet controller: Mellanox Technologies MT27710 Family [ConnectX-4 Lx]</div>
<div><br>
</div>
<div>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 : </div>
<div><br>
</div>
<div>    drivers:</div>
<div>          common/mvep:  missing dependency, "libmusdk"</div>
<div>          <b>common/mlx5:  missing dependency, "mlx5"</b></div>
<div>          <b>net/mlx4:     missing dependency, "mlx4"</b></div>
<div>          <b>net/mlx5:     missing internal dependency, "common_mlx5"</b></div>
<div>          net/mvneta:   missing dependency, "libmusdk"</div>
<div>          net/mvpp2:    missing dependency, "libmusdk"</div>
<div>          net/nfb:      missing dependency, "libnfb"</div>
<div>          raw/ioat:     replaced by dmadev drivers</div>
<div>          crypto/armv8: missing dependency, "libAArch64crypto"</div>
<div>          <b>crypto/mlx5:  missing internal dependency, "common_mlx5"</b></div>
<div>          crypto/mvsam: missing dependency, "libmusdk"</div>
<div>          compress/isal:      missing dependency, "libisal"</div>
<div>          <b>compress/mlx5:      missing internal dependency, "common_mlx5"</b></div>
<div>         <b> regex/mlx5:   missing internal dependency, "common_mlx5"</b></div>
<div>          <b>vdpa/mlx5:    missing internal dependency, "common_mlx5"</b></div>
<div>          gpu/cuda:     missing dependency, "cuda.h"</div>
<div><br>
</div>
<div>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 ?
<br>
</div>
<div><br>
</div>
<div>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 :</div>
<div><br>
</div>
<div>>[mderouss@mark-dt ~]$ pkg-config --list-all | grep mlx</div>
<div>>libmlx4                        libmlx4 - RDMA Core Userspace Library</div>
<div>>libmlx5                        libmlx5 - RDMA Core Userspace Library</div>
<div><br>
</div>
<div>Could someone possibly clarify what I actually need, and where I should get it from ?
<br>
</div>
<div><br>
</div>
<div>Regards,</div>
Mark de Roussier<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="Signature">
<div><img alt="" style="width: 615px; height: 142px; max-width: initial;" width="615" height="142" data-outlook-trace="F:1|T:1" src="cid:bfe06702-5f46-4fb0-b5d9-2c1e4252d3d1"><img alt="" style="width: 614px; height: 73px; max-width: initial;" width="614" height="73" data-outlook-trace="F:1|T:1" src="cid:08c8e8c8-6523-42be-95fa-b86e84e922f8"></div>
</div>
</div>
</body>
</html>