From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 97995A0C47; Thu, 19 Aug 2021 11:12:53 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5AA3C4067E; Thu, 19 Aug 2021 11:12:53 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 4B2AE40141 for ; Thu, 19 Aug 2021 11:12:51 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10080"; a="216512316" X-IronPort-AV: E=Sophos;i="5.84,334,1620716400"; d="scan'208";a="216512316" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Aug 2021 02:12:50 -0700 X-IronPort-AV: E=Sophos;i="5.84,334,1620716400"; d="scan'208";a="451323438" Received: from bricha3-mobl.ger.corp.intel.com ([10.252.21.121]) by fmsmga007-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 19 Aug 2021 02:12:49 -0700 Date: Thu, 19 Aug 2021 10:12:45 +0100 From: Bruce Richardson To: William Tu Cc: Dmitry Kozlyuk , dpdk-dev Message-ID: References: <20210805221532.1d6b653a@sovereign> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Subject: Re: [dpdk-dev] Windows community call: MoM 2021-08-04 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, Aug 18, 2021 at 04:40:02PM -0700, William Tu wrote: > On Tue, Aug 17, 2021 at 7:14 AM Bruce Richardson > 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 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' > Looking at the meson log, it appears that the PKG_CONFIG_PATH is empty for the meson call to pkg-config "env[PKG_CONFIG_PATH]:", which may explain why DPDK is not found. I suspect meson only uses the PKG_CONFIG_PATH from the environment on first run, but beyond that you can configure a PKG_CONFIG_PATH using a meson configuration option "-Dpkg_config_path". Can you try explicitly setting that in your build and see if it fixes it for you? /Bruce