[dpdk-dev] Windows community call: MoM 2021-08-04

William Tu u9012063 at gmail.com
Thu Aug 19 01:40:02 CEST 2021


On Tue, Aug 17, 2021 at 7:14 AM Bruce Richardson
<bruce.richardson at intel.com> wrote:
>
> On Fri, Aug 06, 2021 at 04:17:32PM -0700, William Tu wrote:
> > On Thu, Aug 5, 2021 at 12:15 PM Dmitry Kozlyuk <dmitry.kozliuk at gmail.com> wrote:
> > >
> > snip
> >
> > > # Porting OvS build system to meson (William Tu)
> > >
> > > Status: OvS compiles with some features disabled, with a lot of warnings.
> > > Issues:
> > >
> > > * vhost-user is Linux-specific.
> > >   [Omar] Microsoft is working on functional equivalent.
> > > * rte_version* not exported.
> > >   AI William to send patches.
> > > * rte_open_logstream() implementation relies on Linux-specific fopencookie().
> > >   We need a more generic facility to redirect logs.
> > >   AI William and DmitryK to discuss.
> > > * meson not finding DPDK with pkg-config, maybe meson bug.
> >
> > To give more details about this for people who are interested.
> > At OVS side, we tried to link the DPDK library, by doing below at
> > meson.build file
> >     libdpdk = dependency('libdpdk', method: 'pkg-config')" , or give
> > it a specific path
> >     libdpdk = cc.find_library('dpdk', dirs: ['C:\\temp\\dpdk\\lib'])
> >
> > However, it doesn't work, with error below
> >     Run-time dependency libdpdk found: NO (tried pkgconfig)
> >     meson.build:45:4: ERROR: Dependency "libdpdk" not found, tried pkgconfig
> >
>
> Can you share the meson log file snippet where it tries the pkg-config
> call? Does PKG_CONFIG_PATH have to be set to a special value to get the .pc
> files found?

Hi Bruce,
Thanks!
The log below:
---
Target machine cpu: x86_64
Pkg-config binary for MachineChoice.HOST is not cached.
Pkg-config binary missing from cross or native file, or env var undefined.
Trying a default Pkg-config fallback at pkg-config
Found pkg-config:
C:\ProgramData\chocolatey\lib\pkgconfiglite\tools\pkg-config-lite-0
.28-1\bin\pkg-config.EXE (0.28)
Determining dependency 'libdpdk' with pkg-config executable
'C:\\ProgramData\\chocola
tey\\lib\\pkgconfiglite\\tools\\pkg-config-lite-0.28-1\\bin\\pkg-config.EXE'
env[PKG_CONFIG_PATH]:
Called `C:\ProgramData\chocolatey\lib\pkgconfiglite\tools\pkg-config-lite-0.28-1\bin\
pkg-config.EXE --modversion libdpdk` -> 1

Run-time dependency libdpdk found: NO (tried pkgconfig)
---
However, I copy the command and run it on powershell
PS C:\k8s-antrea-dpdk-win\ovs>
C:\ProgramData\chocolatey\lib\pkgconfiglite\tools\pkg-
config-lite-0.28-1\bin\pkg-config.EXE --modversion libdpdk
21.08.0-rc1

Yes, for example:
$env:PKG_CONFIG_PATH = 'C:\temp\DPDK\lib\pkgconfig'

>
> For the "find_library" calls, that would not be expected to work since
> there is no single "libdpdk.so" file.
>
> By any chance are you looking to investigate meson subproject support in
> future? [1] It should provide an easy way to provide DPDK with OVS for
> systems without it already installed, but may require some small changes to
> DPDK meson files to work neatly. I've always meant to investigate how to
> use it for applications using DPDK but never actually got around to it.

Sure, I'm new to Meson, will take a look at subproject support.
Thanks
William


More information about the dev mailing list