From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id C363EA04FF;
	Tue, 24 May 2022 08:29:42 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id E23A14014F;
	Tue, 24 May 2022 08:29:41 +0200 (CEST)
Received: from EUR04-DB3-obe.outbound.protection.outlook.com
 (mail-eopbgr60087.outbound.protection.outlook.com [40.107.6.87])
 by mails.dpdk.org (Postfix) with ESMTP id 2B0E7400D6
 for <dev@dpdk.org>; Tue, 24 May 2022 08:29:40 +0200 (CEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RX0IYc7gTpdH7rodYy9alGEulmlxl9/R1LRbw/zFI50LVrlNjXurGMvI4ME0k9I5myB5y1bWJXOrRLLkTACTMhqqv1EILuu3W9s1g9pYGVh8J4uNvsqL3cXCy1KLGgSBjkcgApkBYjQX6RJg20b7zaNzQc/ktATGElmkBInlRIH3L1XxMjfYZzgY4bxLcO3GOMROEQ+MOwBT2/OQr8U3vJJ+f8qrdwTVyFp76vRt0dUKFX2y+tYhouYR8ridNO1Vhh41TFnCTbP7hdkCSpanZ6FDsuejMC6b7eKhYE8kkjzAgMTYgJJnuyoGDEtbyEZcAPAH0DqLdGEM7h/YuBb6Cg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=mo9eBQRvsX4OxCGGW5SXXitOHktSIygxWCRair9McoM=;
 b=dWj6Oc21P78DqqxUwgCePL/p1AByiNnJnYN9VSJ0smQvKDuo2iRSnZHyjDRgWa7b8K6UirbvHfYRGgKyakCUKbWhB+J9i2pOr1r4EQdjwEuXYDVnUSlcIRUD874/rQeUUje0e5uk08aYZM4vo/nXfDJwldinhj7JsOOaRE2lAkyuO+eCzcK30ktF4aY+z6StnULbEfLuaklL+mEsjRyzy/Go9xyF/VXevOVxM0zQKh2DZeEq7VVPiqfQ4HjdxuXFJM97ztQKz8Amdjj5DzBtxE4NPSgQwvOeuOHrPR2bRI+oqwQwUfa+QM+qpE+XkD34MlFu3R3ivzVuST48G9+yTg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=voereir.com; dmarc=pass action=none header.from=voereir.com;
 dkim=pass header.d=voereir.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=voereir.onmicrosoft.com; s=selector2-voereir-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=mo9eBQRvsX4OxCGGW5SXXitOHktSIygxWCRair9McoM=;
 b=cHC4qvYuttiF0OAq19r/LXcYBZBl0Ez11LI1ldOsFo9F6uKIySugqz28KxxUAoJPE26qyv1y7PoMzhmVuYtACi4lXkn+Xu/f79zi2D0IKWqVWO7qoY6dVFyDftmtgz3HzbdXNvSdlfJsHocI0URM4akij8gw6VIb9Ji0mcDwFMI=
Received: from AS8PR02MB6837.eurprd02.prod.outlook.com (2603:10a6:20b:257::19)
 by AM0PR02MB4994.eurprd02.prod.outlook.com (2603:10a6:208:10b::30)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5273.23; Tue, 24 May
 2022 06:29:38 +0000
Received: from AS8PR02MB6837.eurprd02.prod.outlook.com
 ([fe80::1865:4353:67:fc40]) by AS8PR02MB6837.eurprd02.prod.outlook.com
 ([fe80::1865:4353:67:fc40%6]) with mapi id 15.20.5273.023; Tue, 24 May 2022
 06:29:38 +0000
From: "Avijit  Pandey" <Avijit@voereir.com>
To: Stephen Hemminger <stephen@networkplumber.org>
CC: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: Undefined reference to symbol while compiling DPPD-PROX
Thread-Topic: Undefined reference to symbol while compiling DPPD-PROX
Thread-Index: AQHYWsl88VancX7YuUqY7/rcdBUmfK0Fb1wAgChJ3ak=
Date: Tue, 24 May 2022 06:29:38 +0000
Message-ID: <AS8PR02MB68372512D00E711557428AF9CCD79@AS8PR02MB6837.eurprd02.prod.outlook.com>
References: <AS8PR02MB6837EC9790B5D7617FE5F70DCCFD9@AS8PR02MB6837.eurprd02.prod.outlook.com>
 <20220428081308.1bf0f1f1@hermes.local>
In-Reply-To: <20220428081308.1bf0f1f1@hermes.local>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
msip_labels: 
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=voereir.com;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e7008c82-784a-4f68-7823-08da3d4ec72e
x-ms-traffictypediagnostic: AM0PR02MB4994:EE_
x-microsoft-antispam-prvs: <AM0PR02MB499448FF590351DD027304FDCCD79@AM0PR02MB4994.eurprd02.prod.outlook.com>
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: EWMgtZilS7r5FIxyAjBzO9NvnP0zzDHxKt+rv2fM3VpIlwFAfG0fw93gtbFUKZi9SuTQQSE4RsHvnTGgBbOVMezkYqf/aAyC3pq+afZOf5IeNYLDK8EIBWx/j4J/UxFdwDoBCpX9Fz0GnP+AJ/dzy07UkkQYEPeLtq9YxUO2WUJhjCN3cOMo/RM/uuLwVPi8ok94dkSTXR5nuUH2a2tfgZOZAgP7zhJNURWc+UVewjNiAiTd3idK3CvOIuYVePmJDpmYk0JfH2bvTmdRCw6iCakwFpffC8pMmYyHFHGTU5loMk+eBZVXRQL9Zm2TAqfn5gXoENF8eDxaH+eVYi8DrWtHtwQYpP1ayiWylpXdZ6vL1tdgv7qWZLsDp27NNBJnKy+pvXs0JhFspWXEKqBqPIljPFY1LD7afw6wKXSvZPuJhaDqGYaWUqQHL8yTQmGnKi7TfdVnii88L8wfu7dSnt/gHqh2eaYClr3I0Ew74bvKgmAtKzW6GNBpMC4XLc2iFFaKqb+8zTEY1bxlWUylw1t+NuJ4por7u4mlvZ8RCLtWptXemvsuBg9tGafYRiojbrE0+h/vZMYaMlrb6gVApVKo1V5GdvstO2JB8v9btS5JdcFNLqHD6w1/6qYhizCo5PGiTQV1uym7Ywkm8KTuSoMYk1BcJljat6+HMZfgIJykbSyf2Q9HblOsGQcUB+iJNUE3bG5kylAvAK5WTT3DcjoYxTnbR6vZyC46yQ+kpRwtQQh9WupIsoOKggghmVGHSWjuYIcxwaECicKqKcGeBT3h8A26x5STyX1+jOMdcjE=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:AS8PR02MB6837.eurprd02.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230001)(39830400003)(396003)(376002)(136003)(366004)(346002)(6916009)(76116006)(4326008)(316002)(55016003)(186003)(86362001)(8676002)(38100700002)(53546011)(66946007)(66476007)(66446008)(66556008)(91956017)(64756008)(19627405001)(166002)(52536014)(71200400001)(508600001)(38070700005)(26005)(122000001)(5660300002)(33656002)(8936002)(41300700001)(2906002)(6506007)(9686003)(83380400001)(966005)(7696005);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?vZeWR/i3Ea2b9o11zW4R3bzv4YbmiHc34TS3RaH4f1Gr8w7CejKqN90uoQrR?=
 =?us-ascii?Q?7B/5GyV6+TfzkglJJBIj9TJA4nYnFOxIiKKlQQqWf7COSAhiWhaxt/RM/Zyx?=
 =?us-ascii?Q?+TTJCgP7jCeqqxsIMcjNZHF4c8K9ZsI8EPPbGkO48/e4v4RgHbWaQ9JQp5tF?=
 =?us-ascii?Q?jN4PamOBYt88fmnQ2TZhKUQFKU9nJkDAeJHFeqgZgUFsGFqGu32zr/gF0ZB2?=
 =?us-ascii?Q?gIhSj4/xXORyPHbKWv4MYjsGRDaDFa250pByLHh8/uNeLC+8Bv0KCMZa9ZWa?=
 =?us-ascii?Q?aaJv63wBf5F/3TkzmzIHGGNUhMmr05QIpQ4BSLcISbVNTZlQFZyERg0BJ8H3?=
 =?us-ascii?Q?zX8iu4ZrBvD5HL92ulQP4P5GHDhoq++VvIvHRdxqP1RbCRiIRPWhr42B625f?=
 =?us-ascii?Q?Ql85lUjQgNhPnoOJ2gDycwXX8UZR2iRfAMdqJbnFn+liSImNfrH2gGqX3GNH?=
 =?us-ascii?Q?Yt734EZtIwqBqy4UB7gUZ8xBMhIWOMvcjxfgIfxE86GOnvFLWDWiIPG/MRdD?=
 =?us-ascii?Q?o1ONdCYAGfI2wsRmh2T9xis/auly8HrKOd3dSu2Kk0XB9bD6NBEFeONw9dwx?=
 =?us-ascii?Q?+qKpV0cZxyG7KeE+Qi2bIaZBfRTCenhTX1QkqwoWi2GPRP/8GcR+gghAt9uo?=
 =?us-ascii?Q?DE+w1Out2ilKsCoNZSE+7x2EQn07do2MetS2oU+lQc4LyuEhl4VROP8UcORt?=
 =?us-ascii?Q?mTqEOCxL8F9LHZ66upbpulOw8H7/uj8/XSXSg++F1o6QGKfWLdAXUd8EOVEh?=
 =?us-ascii?Q?Muz3ELYMIyVcJz3oRgXFD7a8HrGWAFACiKo7PaWYaWasOZOFfTJmIAfV8+X3?=
 =?us-ascii?Q?8xsoWMOzbuoREm8wuI+ToN1ua7fI5yBh5IycMhixR/SizV32wRstPWE3MW2b?=
 =?us-ascii?Q?c+KUCgcwTdHpEMLTFylHyeZ/Kmmik/QgUL5s3eBC55eDY8YXqsyXpwly+Oy/?=
 =?us-ascii?Q?S5+fnS4cyJP1m+cy/jXkBl2UUVk/QNlXFydznb7IpLxGAWXz0vfKs/QaDQYH?=
 =?us-ascii?Q?jHa9qqLiBpSOeGsXD2g/+kUd9pa97G5nsTAPxTnLshTIWKidbv1nOkelV3WG?=
 =?us-ascii?Q?IGNwvCexX7PJHDd2j5TNmF0KPX+zz3RJ4JRmg/Jy42HRyziHjTat91VJMvOy?=
 =?us-ascii?Q?XXPuKUcuz9G1dJA6bysKLOcysDzTRXw4NVQGXtGDs3HBo58aqsyb877MunLd?=
 =?us-ascii?Q?GDey91pGERqpc/rZ2wUmWfmivaQ75fPjH9AynM6MNKAVNdB1zA7gr/111KNE?=
 =?us-ascii?Q?fjlfpLuQzuNisznt7EEdbKJ+clFN58jNiVqYaxVJnJKUKogBfluYcHuNlsa3?=
 =?us-ascii?Q?HIa0ynuB/CXHVqHFpC7mwpBnvLxrXwPJhEeDEFOzloTAMHeKhzEOSIaETJPd?=
 =?us-ascii?Q?9Ku/NiQR3iuPN4ZoiJTfz4E6JNnnu4IVK49CnoRi9xvr9cvC++R/GT4YTaoV?=
 =?us-ascii?Q?mqxApZvYgT1sXLfP8rxNnppMVN3Uyq/iRc9LZzKAjSvQsONoU0x5iN+QG1NQ?=
 =?us-ascii?Q?zZwXsVqOgg6Ew3TmcvuziMqvfneGY6F0gYXMNFWpSVUDhCzRG9SFyJEP4yzW?=
 =?us-ascii?Q?uW4Fxv+FgZwshdbPcZMH9El18jmMzheOnwmDi6rxBgOdu3v6pqkPSDRSd50o?=
 =?us-ascii?Q?Ocs6sa7CK7H0YmceWnb5Er1CvwcpWMhbC57UJBjDXZebNi7rOYcY1ZQGLjjK?=
 =?us-ascii?Q?X5j/e+j0r8fX7Yiqq9dv65QyyScwUcxGstZCwEhrDHUR6EOm?=
Content-Type: multipart/alternative;
 boundary="_000_AS8PR02MB68372512D00E711557428AF9CCD79AS8PR02MB6837eurp_"
MIME-Version: 1.0
X-OriginatorOrg: voereir.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: AS8PR02MB6837.eurprd02.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e7008c82-784a-4f68-7823-08da3d4ec72e
X-MS-Exchange-CrossTenant-originalarrivaltime: 24 May 2022 06:29:38.4488 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: c0332603-0945-429b-ba2e-ef89b4a710a3
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: RQwXT7PdN+NjQ0i5rAOuJIw3xeyWiG8ekQR+c6UMW3IOKT/ejUhZP5C2iDn4/COSXUa+dnbsev4P0DqS5BTkRQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR02MB4994
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

--_000_AS8PR02MB68372512D00E711557428AF9CCD79AS8PR02MB6837eurp_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Yes, works.

Made changes into the meson.build as
sed -i "139i deps +=3D [cc.find_library('dl', required: true)]" meson.build


Thanks a lot.
________________________________
From: Stephen Hemminger <stephen@networkplumber.org>
Sent: Thursday, April 28, 2022 8:43 PM
To: Avijit Pandey <Avijit@voereir.com>
Cc: dev@dpdk.org <dev@dpdk.org>
Subject: Re: Undefined reference to symbol while compiling DPPD-PROX

On Thu, 28 Apr 2022 06:32:14 +0000
"Avijit  Pandey" <Avijit@voereir.com> wrote:

> I have OS: Ubuntu 20.04 with kernel: 5.4.0-42-generic
>
> Built DPDK from the following steps:
>
> cd /opt
> export RTE_SDK=3D"/opt/dpdk"
> export RTE_TARGET=3D"x86_64-native-linuxapp-gcc"
> export PKG_CONFIG_PATH=3D"/usr/local/lib/x86_64-linux-gnu/pkgconfig"
> git clone https://github.com/DPDK/dpdk.git
> git clone http://dpdk.org/git/dpdk-kmods
> cd dpdk/
> git checkout v20.11
> cp -r /opt/dpdk-kmods/linux/igb_uio/ /opt/dpdk/kernel/linux/
> cat <<EOF >/opt/dpdk/kernel/linux/igb_uio/meson.build
> # SPDX-License-Identifier: BSD-3-Clause
> # Copyright(c) 2017 Intel Corporation
>
> mkfile =3D custom_target('igb_uio_makefile',
>         output: 'Makefile',
>         command: ['touch', '@OUTPUT@'])
>
> custom_target('igb_uio',
>         input: ['igb_uio.c', 'Kbuild'],
>         output: 'igb_uio.ko',
>         command: ['make', '-C', kernel_dir + '/build',
>                 'M=3D' + meson.current_build_dir(),
>                 'src=3D' + meson.current_source_dir(),
>                 'EXTRA_CFLAGS=3D-I' + meson.current_source_dir() +
>                         '/../../../lib/librte_eal/include',
>                 'modules'],
>         depends: mkfile,
>         install: true,
>         install_dir: kernel_dir + '/extra/dpdk',
>         build_by_default: get_option('enable_kmods'))
> EOF
> meson setup ${RTE_SDK} ${RTE_TARGET}
> meson -Dexamples=3Dall build
> cd build
> ninja
> ninja install
> ldconfig -v
> cd /opt/dpdk/kernel/linux/igb_uio
> make -j 4
>
>
> Building DPPD-PROX via below steps:
>
> git clone https://github.com/opnfv/samplevnf.git
> cd samplevnf/VNFs/DPPD-PROX
> meson build
> ninja -C build
>
> Facing error on the task: handle_fm.c on running that command ninja -C bu=
ild
>
> Error:
> [108/108] Linking target prox.
>
> FAILED: prox
>
> cc  -o prox 'prox@exe/task_init.c.o' 'prox@exe/handle_aggregator.c.o' 'pr=
ox@exe/handle_nop.c.o' 'prox@exe/handle_irq.c.o' 'prox@exe/handle_arp.c.o' =
'prox@exe/handle_impair.c.o' 'prox@exe/handle_lat.c.o' 'prox@exe/handle_qos=
.c.o' 'prox@exe/handle_qinq_decap4.c.o' 'prox@exe/handle_routing.c.o' 'prox=
@exe/handle_untag.c.o' 'prox@exe/handle_mplstag.c.o' 'prox@exe/handle_qinq_=
decap6.c.o' 'prox@exe/rw_reg.c.o' 'prox@exe/handle_lb_qinq.c.o' 'prox@exe/h=
andle_lb_pos.c.o' 'prox@exe/handle_lb_net.c.o' 'prox@exe/handle_qinq_encap4=
.c.o' 'prox@exe/handle_qinq_encap6.c.o' 'prox@exe/handle_classify.c.o' 'pro=
x@exe/handle_l2fwd.c.o' 'prox@exe/handle_swap.c.o' 'prox@exe/handle_police.=
c.o' 'prox@exe/handle_acl.c.o' 'prox@exe/handle_gen.c.o' 'prox@exe/handle_m=
aster.c.o' 'prox@exe/packet_utils.c.o' 'prox@exe/handle_mirror.c.o' 'prox@e=
xe/handle_genl4.c.o' 'prox@exe/handle_ipv6_tunnel.c.o' 'prox@exe/handle_rea=
d.c.o' 'prox@exe/handle_cgnat.c.o' 'prox@exe/handle_nat.c.o' 'prox@exe/hand=
le_dump.c.o' 'prox@exe/handle_tsc.c.o' 'prox@exe/handle_fm.c.o' 'prox@exe/h=
andle_lb_5tuple.c.o' 'prox@exe/handle_blockudp.c.o' 'prox@exe/toeplitz.c.o'=
 'prox@exe/thread_nop.c.o' 'prox@exe/thread_generic.c.o' 'prox@exe/prox_arg=
s.c.o' 'prox@exe/prox_cfg.c.o' 'prox@exe/prox_cksum.c.o' 'prox@exe/prox_por=
t_cfg.c.o' 'prox@exe/cfgfile.c.o' 'prox@exe/clock.c.o' 'prox@exe/commands.c=
.o' 'prox@exe/cqm.c.o' 'prox@exe/msr.c.o' 'prox@exe/defaults.c.o' 'prox@exe=
/display.c.o' 'prox@exe/display_latency.c.o' 'prox@exe/display_latency_dist=
r.c.o' 'prox@exe/display_mempools.c.o' 'prox@exe/display_ports.c.o' 'prox@e=
xe/display_rings.c.o' 'prox@exe/display_priority.c.o' 'prox@exe/display_pkt=
_len.c.o' 'prox@exe/display_l4gen.c.o' 'prox@exe/display_tasks.c.o' 'prox@e=
xe/display_irq.c.o' 'prox@exe/log.c.o' 'prox@exe/hash_utils.c.o' 'prox@exe/=
main.c.o' 'prox@exe/parse_utils.c.o' 'prox@exe/file_utils.c.o' 'prox@exe/ru=
n.c.o' 'prox@exe/input_conn.c.o' 'prox@exe/input_curses.c.o' 'prox@exe/rx_p=
kt.c.o' 'prox@exe/lconf.c.o' 'prox@exe/tx_pkt.c.o' 'prox@exe/expire_cpe.c.o=
' 'prox@exe/ip_subnet.c.o' 'prox@exe/stats_port.c.o' 'prox@exe/stats_mempoo=
l.c.o' 'prox@exe/stats_ring.c.o' 'prox@exe/stats_l4gen.c.o' 'prox@exe/stats=
_latency.c.o' 'prox@exe/stats_global.c.o' 'prox@exe/stats_core.c.o' 'prox@e=
xe/stats_task.c.o' 'prox@exe/stats_prio.c.o' 'prox@exe/stats_irq.c.o' 'prox=
@exe/cmd_parser.c.o' 'prox@exe/input.c.o' 'prox@exe/prox_shared.c.o' 'prox@=
exe/prox_lua_types.c.o' 'prox@exe/genl4_bundle.c.o' 'prox@exe/heap.c.o' 'pr=
ox@exe/genl4_stream_tcp.c.o' 'prox@exe/genl4_stream_udp.c.o' 'prox@exe/cdf.=
c.o' 'prox@exe/stats.c.o' 'prox@exe/stats_cons_log.c.o' 'prox@exe/stats_con=
s_cli.c.o' 'prox@exe/stats_parser.c.o' 'prox@exe/hash_set.c.o' 'prox@exe/pr=
ox_lua.c.o' 'prox@exe/prox_malloc.c.o' 'prox@exe/prox_ipv6.c.o' 'prox@exe/p=
rox_compat.c.o' 'prox@exe/handle_nsh.c.o' 'prox@exe/handle_pf_acl.c.o' 'pro=
x@exe/thread_pipeline.c.o' 'prox@exe/git_version.c.o' -Wl,--as-needed -Wl,-=
-no-undefined -Wl,-O1 -Wl,--as-needed -Wl,--start-group /usr/local/lib/x86_=
64-linux-gnu/librte_node.so /usr/local/lib/x86_64-linux-gnu/librte_graph.so=
 /usr/local/lib/x86_64-linux-gnu/librte_bpf.so /usr/local/lib/x86_64-linux-=
gnu/librte_flow_classify.so /usr/local/lib/x86_64-linux-gnu/librte_pipeline=
.so /usr/local/lib/x86_64-linux-gnu/librte_table.so /usr/local/lib/x86_64-l=
inux-gnu/librte_port.so /usr/local/lib/x86_64-linux-gnu/librte_fib.so /usr/=
local/lib/x86_64-linux-gnu/librte_ipsec.so /usr/local/lib/x86_64-linux-gnu/=
librte_vhost.so /usr/local/lib/x86_64-linux-gnu/librte_stack.so /usr/local/=
lib/x86_64-linux-gnu/librte_security.so /usr/local/lib/x86_64-linux-gnu/lib=
rte_sched.so /usr/local/lib/x86_64-linux-gnu/librte_reorder.so /usr/local/l=
ib/x86_64-linux-gnu/librte_rib.so /usr/local/lib/x86_64-linux-gnu/librte_re=
gexdev.so /usr/local/lib/x86_64-linux-gnu/librte_rawdev.so /usr/local/lib/x=
86_64-linux-gnu/librte_pdump.so /usr/local/lib/x86_64-linux-gnu/librte_powe=
r.so /usr/local/lib/x86_64-linux-gnu/librte_member.so /usr/local/lib/x86_64=
-linux-gnu/librte_lpm.so /usr/local/lib/x86_64-linux-gnu/librte_latencystat=
s.so /usr/local/lib/x86_64-linux-gnu/librte_kni.so /usr/local/lib/x86_64-li=
nux-gnu/librte_jobstats.so /usr/local/lib/x86_64-linux-gnu/librte_ip_frag.s=
o /usr/local/lib/x86_64-linux-gnu/librte_gso.so /usr/local/lib/x86_64-linux=
-gnu/librte_gro.so /usr/local/lib/x86_64-linux-gnu/librte_eventdev.so /usr/=
local/lib/x86_64-linux-gnu/librte_efd.so /usr/local/lib/x86_64-linux-gnu/li=
brte_distributor.so /usr/local/lib/x86_64-linux-gnu/librte_cryptodev.so /us=
r/local/lib/x86_64-linux-gnu/librte_compressdev.so /usr/local/lib/x86_64-li=
nux-gnu/librte_cfgfile.so /usr/local/lib/x86_64-linux-gnu/librte_bitratesta=
ts.so /usr/local/lib/x86_64-linux-gnu/librte_bbdev.so /usr/local/lib/x86_64=
-linux-gnu/librte_acl.so /usr/local/lib/x86_64-linux-gnu/librte_timer.so /u=
sr/local/lib/x86_64-linux-gnu/librte_hash.so /usr/local/lib/x86_64-linux-gn=
u/librte_metrics.so /usr/local/lib/x86_64-linux-gnu/librte_cmdline.so /usr/=
local/lib/x86_64-linux-gnu/librte_pci.so /usr/local/lib/x86_64-linux-gnu/li=
brte_ethdev.so /usr/local/lib/x86_64-linux-gnu/librte_meter.so /usr/local/l=
ib/x86_64-linux-gnu/librte_net.so /usr/local/lib/x86_64-linux-gnu/librte_mb=
uf.so /usr/local/lib/x86_64-linux-gnu/librte_mempool.so /usr/local/lib/x86_=
64-linux-gnu/librte_rcu.so /usr/local/lib/x86_64-linux-gnu/librte_ring.so /=
usr/local/lib/x86_64-linux-gnu/librte_eal.so /usr/local/lib/x86_64-linux-gn=
u/librte_telemetry.so /usr/local/lib/x86_64-linux-gnu/librte_kvargs.so /usr=
/lib/x86_64-linux-gnu/libbsd.so -Wl,-Bsymbolic-functions -ltinfo -pthread -=
lpcap -Wl,-Bsymbolic-functions -lncurses -ltinfo -Wl,-Bsymbolic-functions -=
lncursesw -ltinfo /usr/lib/x86_64-linux-gnu/libedit.so -lm /usr/lib/x86_64-=
linux-gnu/liblua5.3.so -lrte_bus_vdev -lrte_net_ring -Wl,--end-group
>
> /usr/bin/ld: prox@exe/handle_fm.c.o: undefined reference to symbol 'dlsym=
@@GLIBC_2.2.5'
>
> /usr/bin/ld: /usr/local/lib/x86_64-linux-gnu/libdl.so.2: error adding sym=
bols: DSO missing from command line
>
> collect2: error: ld returned 1 exit status
>
> ninja: build stopped: subcommand failed.
>
>
>
> How do I proceed in this?

Looks like compile line in PROX is missing -ldl


--_000_AS8PR02MB68372512D00E711557428AF9CCD79AS8PR02MB6837eurp_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<style type=3D"text/css" style=3D"display:none;"> P {margin-top:0;margin-bo=
ttom:0;} </style>
</head>
<body dir=3D"ltr">
<div style=3D"font-family: Calibri, Arial, Helvetica, sans-serif; font-size=
: 12pt; color: rgb(0, 0, 0);">
Yes, works.<br>
<br>
Made changes into the meson.build as<br>
<blockquote itemscope=3D"" itemtype=3D"https://schemas.microsoft.com/Quoted=
Text" style=3D"border-left: 3px solid rgb(200, 200, 200); border-top-color:=
 rgb(200, 200, 200); border-right-color: rgb(200, 200, 200); border-bottom-=
color: rgb(200, 200, 200); padding-left: 1ex; margin-left: 0.8ex; color: rg=
b(102, 102, 102);">
sed -i &quot;139i deps +=3D [cc.find_library('dl', required: true)]&quot; m=
eson.build<br>
</blockquote>
<br>
<br>
Thanks a lot.</div>
<div id=3D"appendonsend"></div>
<hr style=3D"display:inline-block;width:98%" tabindex=3D"-1">
<div id=3D"divRplyFwdMsg" dir=3D"ltr"><font face=3D"Calibri, sans-serif" st=
yle=3D"font-size:11pt" color=3D"#000000"><b>From:</b> Stephen Hemminger &lt=
;stephen@networkplumber.org&gt;<br>
<b>Sent:</b> Thursday, April 28, 2022 8:43 PM<br>
<b>To:</b> Avijit Pandey &lt;Avijit@voereir.com&gt;<br>
<b>Cc:</b> dev@dpdk.org &lt;dev@dpdk.org&gt;<br>
<b>Subject:</b> Re: Undefined reference to symbol while compiling DPPD-PROX=
</font>
<div>&nbsp;</div>
</div>
<div class=3D"BodyFragment"><font size=3D"2"><span style=3D"font-size:11pt;=
">
<div class=3D"PlainText">On Thu, 28 Apr 2022 06:32:14 +0000<br>
&quot;Avijit&nbsp; Pandey&quot; &lt;Avijit@voereir.com&gt; wrote:<br>
<br>
&gt; I have OS: Ubuntu 20.04 with kernel: 5.4.0-42-generic<br>
&gt; <br>
&gt; Built DPDK from the following steps:<br>
&gt; <br>
&gt; cd /opt<br>
&gt; export RTE_SDK=3D&quot;/opt/dpdk&quot;<br>
&gt; export RTE_TARGET=3D&quot;x86_64-native-linuxapp-gcc&quot;<br>
&gt; export PKG_CONFIG_PATH=3D&quot;/usr/local/lib/x86_64-linux-gnu/pkgconf=
ig&quot;<br>
&gt; git clone <a href=3D"https://github.com/DPDK/dpdk.git">https://github.=
com/DPDK/dpdk.git</a><br>
&gt; git clone <a href=3D"http://dpdk.org/git/dpdk-kmods">http://dpdk.org/g=
it/dpdk-kmods</a><br>
&gt; cd dpdk/<br>
&gt; git checkout v20.11<br>
&gt; cp -r /opt/dpdk-kmods/linux/igb_uio/ /opt/dpdk/kernel/linux/<br>
&gt; cat &lt;&lt;EOF &gt;/opt/dpdk/kernel/linux/igb_uio/meson.build<br>
&gt; # SPDX-License-Identifier: BSD-3-Clause<br>
&gt; # Copyright(c) 2017 Intel Corporation<br>
&gt; <br>
&gt; mkfile =3D custom_target('igb_uio_makefile',<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; output: 'Makefile',<br=
>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; command: ['touch', '@O=
UTPUT@'])<br>
&gt; <br>
&gt; custom_target('igb_uio',<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; input: ['igb_uio.c', '=
Kbuild'],<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; output: 'igb_uio.ko',<=
br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; command: ['make', '-C'=
, kernel_dir + '/build',<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp; 'M=3D' + meson.current_build_dir(),<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp; 'src=3D' + meson.current_source_dir(),<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp; 'EXTRA_CFLAGS=3D-I' + meson.current_source_dir() =
+<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; '=
/../../../lib/librte_eal/include',<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp; 'modules'],<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; depends: mkfile,<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; install: true,<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; install_dir: kernel_di=
r + '/extra/dpdk',<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; build_by_default: get_=
option('enable_kmods'))<br>
&gt; EOF<br>
&gt; meson setup ${RTE_SDK} ${RTE_TARGET}<br>
&gt; meson -Dexamples=3Dall build<br>
&gt; cd build<br>
&gt; ninja<br>
&gt; ninja install<br>
&gt; ldconfig -v<br>
&gt; cd /opt/dpdk/kernel/linux/igb_uio<br>
&gt; make -j 4<br>
&gt; <br>
&gt; <br>
&gt; Building DPPD-PROX via below steps:<br>
&gt; <br>
&gt; git clone <a href=3D"https://github.com/opnfv/samplevnf.git">https://g=
ithub.com/opnfv/samplevnf.git</a><br>
&gt; cd samplevnf/VNFs/DPPD-PROX<br>
&gt; meson build<br>
&gt; ninja -C build<br>
&gt; <br>
&gt; Facing error on the task: handle_fm.c on running that command ninja -C=
 build<br>
&gt; <br>
&gt; Error:<br>
&gt; [108/108] Linking target prox.<br>
&gt; <br>
&gt; FAILED: prox<br>
&gt; <br>
&gt; cc&nbsp; -o prox 'prox@exe/task_init.c.o' 'prox@exe/handle_aggregator.=
c.o' 'prox@exe/handle_nop.c.o' 'prox@exe/handle_irq.c.o' 'prox@exe/handle_a=
rp.c.o' 'prox@exe/handle_impair.c.o' 'prox@exe/handle_lat.c.o' 'prox@exe/ha=
ndle_qos.c.o' 'prox@exe/handle_qinq_decap4.c.o'
 'prox@exe/handle_routing.c.o' 'prox@exe/handle_untag.c.o' 'prox@exe/handle=
_mplstag.c.o' 'prox@exe/handle_qinq_decap6.c.o' 'prox@exe/rw_reg.c.o' 'prox=
@exe/handle_lb_qinq.c.o' 'prox@exe/handle_lb_pos.c.o' 'prox@exe/handle_lb_n=
et.c.o' 'prox@exe/handle_qinq_encap4.c.o'
 'prox@exe/handle_qinq_encap6.c.o' 'prox@exe/handle_classify.c.o' 'prox@exe=
/handle_l2fwd.c.o' 'prox@exe/handle_swap.c.o' 'prox@exe/handle_police.c.o' =
'prox@exe/handle_acl.c.o' 'prox@exe/handle_gen.c.o' 'prox@exe/handle_master=
.c.o' 'prox@exe/packet_utils.c.o'
 'prox@exe/handle_mirror.c.o' 'prox@exe/handle_genl4.c.o' 'prox@exe/handle_=
ipv6_tunnel.c.o' 'prox@exe/handle_read.c.o' 'prox@exe/handle_cgnat.c.o' 'pr=
ox@exe/handle_nat.c.o' 'prox@exe/handle_dump.c.o' 'prox@exe/handle_tsc.c.o'=
 'prox@exe/handle_fm.c.o' 'prox@exe/handle_lb_5tuple.c.o'
 'prox@exe/handle_blockudp.c.o' 'prox@exe/toeplitz.c.o' 'prox@exe/thread_no=
p.c.o' 'prox@exe/thread_generic.c.o' 'prox@exe/prox_args.c.o' 'prox@exe/pro=
x_cfg.c.o' 'prox@exe/prox_cksum.c.o' 'prox@exe/prox_port_cfg.c.o' 'prox@exe=
/cfgfile.c.o' 'prox@exe/clock.c.o'
 'prox@exe/commands.c.o' 'prox@exe/cqm.c.o' 'prox@exe/msr.c.o' 'prox@exe/de=
faults.c.o' 'prox@exe/display.c.o' 'prox@exe/display_latency.c.o' 'prox@exe=
/display_latency_distr.c.o' 'prox@exe/display_mempools.c.o' 'prox@exe/displ=
ay_ports.c.o' 'prox@exe/display_rings.c.o'
 'prox@exe/display_priority.c.o' 'prox@exe/display_pkt_len.c.o' 'prox@exe/d=
isplay_l4gen.c.o' 'prox@exe/display_tasks.c.o' 'prox@exe/display_irq.c.o' '=
prox@exe/log.c.o' 'prox@exe/hash_utils.c.o' 'prox@exe/main.c.o' 'prox@exe/p=
arse_utils.c.o' 'prox@exe/file_utils.c.o'
 'prox@exe/run.c.o' 'prox@exe/input_conn.c.o' 'prox@exe/input_curses.c.o' '=
prox@exe/rx_pkt.c.o' 'prox@exe/lconf.c.o' 'prox@exe/tx_pkt.c.o' 'prox@exe/e=
xpire_cpe.c.o' 'prox@exe/ip_subnet.c.o' 'prox@exe/stats_port.c.o' 'prox@exe=
/stats_mempool.c.o' 'prox@exe/stats_ring.c.o'
 'prox@exe/stats_l4gen.c.o' 'prox@exe/stats_latency.c.o' 'prox@exe/stats_gl=
obal.c.o' 'prox@exe/stats_core.c.o' 'prox@exe/stats_task.c.o' 'prox@exe/sta=
ts_prio.c.o' 'prox@exe/stats_irq.c.o' 'prox@exe/cmd_parser.c.o' 'prox@exe/i=
nput.c.o' 'prox@exe/prox_shared.c.o'
 'prox@exe/prox_lua_types.c.o' 'prox@exe/genl4_bundle.c.o' 'prox@exe/heap.c=
.o' 'prox@exe/genl4_stream_tcp.c.o' 'prox@exe/genl4_stream_udp.c.o' 'prox@e=
xe/cdf.c.o' 'prox@exe/stats.c.o' 'prox@exe/stats_cons_log.c.o' 'prox@exe/st=
ats_cons_cli.c.o' 'prox@exe/stats_parser.c.o'
 'prox@exe/hash_set.c.o' 'prox@exe/prox_lua.c.o' 'prox@exe/prox_malloc.c.o'=
 'prox@exe/prox_ipv6.c.o' 'prox@exe/prox_compat.c.o' 'prox@exe/handle_nsh.c=
.o' 'prox@exe/handle_pf_acl.c.o' 'prox@exe/thread_pipeline.c.o' 'prox@exe/g=
it_version.c.o' -Wl,--as-needed
 -Wl,--no-undefined -Wl,-O1 -Wl,--as-needed -Wl,--start-group /usr/local/li=
b/x86_64-linux-gnu/librte_node.so /usr/local/lib/x86_64-linux-gnu/librte_gr=
aph.so /usr/local/lib/x86_64-linux-gnu/librte_bpf.so /usr/local/lib/x86_64-=
linux-gnu/librte_flow_classify.so
 /usr/local/lib/x86_64-linux-gnu/librte_pipeline.so /usr/local/lib/x86_64-l=
inux-gnu/librte_table.so /usr/local/lib/x86_64-linux-gnu/librte_port.so /us=
r/local/lib/x86_64-linux-gnu/librte_fib.so /usr/local/lib/x86_64-linux-gnu/=
librte_ipsec.so /usr/local/lib/x86_64-linux-gnu/librte_vhost.so
 /usr/local/lib/x86_64-linux-gnu/librte_stack.so /usr/local/lib/x86_64-linu=
x-gnu/librte_security.so /usr/local/lib/x86_64-linux-gnu/librte_sched.so /u=
sr/local/lib/x86_64-linux-gnu/librte_reorder.so /usr/local/lib/x86_64-linux=
-gnu/librte_rib.so /usr/local/lib/x86_64-linux-gnu/librte_regexdev.so
 /usr/local/lib/x86_64-linux-gnu/librte_rawdev.so /usr/local/lib/x86_64-lin=
ux-gnu/librte_pdump.so /usr/local/lib/x86_64-linux-gnu/librte_power.so /usr=
/local/lib/x86_64-linux-gnu/librte_member.so /usr/local/lib/x86_64-linux-gn=
u/librte_lpm.so /usr/local/lib/x86_64-linux-gnu/librte_latencystats.so
 /usr/local/lib/x86_64-linux-gnu/librte_kni.so /usr/local/lib/x86_64-linux-=
gnu/librte_jobstats.so /usr/local/lib/x86_64-linux-gnu/librte_ip_frag.so /u=
sr/local/lib/x86_64-linux-gnu/librte_gso.so /usr/local/lib/x86_64-linux-gnu=
/librte_gro.so /usr/local/lib/x86_64-linux-gnu/librte_eventdev.so
 /usr/local/lib/x86_64-linux-gnu/librte_efd.so /usr/local/lib/x86_64-linux-=
gnu/librte_distributor.so /usr/local/lib/x86_64-linux-gnu/librte_cryptodev.=
so /usr/local/lib/x86_64-linux-gnu/librte_compressdev.so /usr/local/lib/x86=
_64-linux-gnu/librte_cfgfile.so
 /usr/local/lib/x86_64-linux-gnu/librte_bitratestats.so /usr/local/lib/x86_=
64-linux-gnu/librte_bbdev.so /usr/local/lib/x86_64-linux-gnu/librte_acl.so =
/usr/local/lib/x86_64-linux-gnu/librte_timer.so /usr/local/lib/x86_64-linux=
-gnu/librte_hash.so /usr/local/lib/x86_64-linux-gnu/librte_metrics.so
 /usr/local/lib/x86_64-linux-gnu/librte_cmdline.so /usr/local/lib/x86_64-li=
nux-gnu/librte_pci.so /usr/local/lib/x86_64-linux-gnu/librte_ethdev.so /usr=
/local/lib/x86_64-linux-gnu/librte_meter.so /usr/local/lib/x86_64-linux-gnu=
/librte_net.so /usr/local/lib/x86_64-linux-gnu/librte_mbuf.so
 /usr/local/lib/x86_64-linux-gnu/librte_mempool.so /usr/local/lib/x86_64-li=
nux-gnu/librte_rcu.so /usr/local/lib/x86_64-linux-gnu/librte_ring.so /usr/l=
ocal/lib/x86_64-linux-gnu/librte_eal.so /usr/local/lib/x86_64-linux-gnu/lib=
rte_telemetry.so /usr/local/lib/x86_64-linux-gnu/librte_kvargs.so
 /usr/lib/x86_64-linux-gnu/libbsd.so -Wl,-Bsymbolic-functions -ltinfo -pthr=
ead -lpcap -Wl,-Bsymbolic-functions -lncurses -ltinfo -Wl,-Bsymbolic-functi=
ons -lncursesw -ltinfo /usr/lib/x86_64-linux-gnu/libedit.so -lm /usr/lib/x8=
6_64-linux-gnu/liblua5.3.so -lrte_bus_vdev
 -lrte_net_ring -Wl,--end-group<br>
&gt; <br>
&gt; /usr/bin/ld: prox@exe/handle_fm.c.o: undefined reference to symbol 'dl=
sym@@GLIBC_2.2.5'<br>
&gt; <br>
&gt; /usr/bin/ld: /usr/local/lib/x86_64-linux-gnu/libdl.so.2: error adding =
symbols: DSO missing from command line<br>
&gt; <br>
&gt; collect2: error: ld returned 1 exit status<br>
&gt; <br>
&gt; ninja: build stopped: subcommand failed.<br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt; How do I proceed in this?<br>
<br>
Looks like compile line in PROX is missing -ldl<br>
<br>
</div>
</span></font></div>
</body>
</html>

--_000_AS8PR02MB68372512D00E711557428AF9CCD79AS8PR02MB6837eurp_--