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 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 ; 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" To: Stephen Hemminger CC: "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: References: <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: 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-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 Sent: Thursday, April 28, 2022 8:43 PM To: Avijit Pandey Cc: dev@dpdk.org Subject: Re: Undefined reference to symbol while compiling DPPD-PROX On Thu, 28 Apr 2022 06:32:14 +0000 "Avijit Pandey" 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 </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
Yes, works.

Made changes into the meson.build as
sed -i "139i deps +=3D [cc.find_library('dl', required: true)]" m= eson.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/pkgconf= ig"
> git clone https://github.= com/DPDK/dpdk.git
> git clone http://dpdk.org/g= it/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', '@O= UTPUT@'])
>
> custom_target('igb_uio',
>         input: ['igb_uio.c', '= Kbuild'],
>         output: 'igb_uio.ko',<= br> >         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_di= r + '/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://g= ithub.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= build
>
> Error:
> [108/108] Linking target prox.
>
> FAILED: prox
>
> cc  -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
>
> /usr/bin/ld: prox@exe/handle_fm.c.o: undefined reference to symbol 'dl= sym@@GLIBC_2.2.5'
>
> /usr/bin/ld: /usr/local/lib/x86_64-linux-gnu/libdl.so.2: error adding = symbols: 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_--