* [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. @ 2017-06-20 14:47 terry.montague.1980 2017-06-20 14:57 ` Gaëtan Rivet 0 siblings, 1 reply; 6+ messages in thread From: terry.montague.1980 @ 2017-06-20 14:47 UTC (permalink / raw) To: users Hi there, Please excuse what to some may appear to be an stupid question. I'm trying to use DPDK with an existing C++ application on Linux, using Eclipse Neon.2 as the IDE due to the use of a lot of 3rd party libraries. I'm not using the DPDK build process with the .mk makefiles. I'm just linking to the prebuilt rte_ libs. I have got the project to compile, but when running rte_eal_init() with some suitable arguments that I know to be good in a simple standalone application, the PMDs appear to be absent, so the app cannot probe any PCI devices. Is there any way this approach is going to work, or do applications that use DPDK have to be compiled as per the example applications with rte.vars.mk/rte.extapp.mk ? Thanks in advance. Terry ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. 2017-06-20 14:47 [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse terry.montague.1980 @ 2017-06-20 14:57 ` Gaëtan Rivet [not found] ` <18287610.38744.1497970879233.JavaMail.defaultUser@defaultHost> 0 siblings, 1 reply; 6+ messages in thread From: Gaëtan Rivet @ 2017-06-20 14:57 UTC (permalink / raw) To: terry.montague.1980; +Cc: users Hi, On Tue, Jun 20, 2017 at 03:47:07PM +0100, terry.montague.1980@btinternet.com wrote: > Hi there, > Please excuse what to some may appear to be an stupid question. > I'm trying to use DPDK with an existing C++ application on Linux, using Eclipse Neon.2 as the IDE due to the use of a lot of 3rd party libraries. I'm not using the DPDK build process with the .mk makefiles. I'm just linking to the prebuilt rte_ libs. > I have got the project to compile, but when running rte_eal_init() with some suitable arguments that I know to be good in a simple standalone application, the PMDs appear to be absent, so the app cannot probe any PCI devices. > Is there any way this approach is going to work, or do applications that use DPDK have to be compiled as per the example applications with rte.vars.mk/rte.extapp.mk ? > Thanks in advance. > Terry Which NIC are you using? Which PMD do you need? You can dynamically link specific DPDK drivers using -d in the EAL parameters. Note that using PMDs as dynamic libraries may slightly impair performances. -- Gaëtan Rivet 6WIND ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <18287610.38744.1497970879233.JavaMail.defaultUser@defaultHost>]
* Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. [not found] ` <18287610.38744.1497970879233.JavaMail.defaultUser@defaultHost> @ 2017-06-20 15:04 ` terry.montague.1980 2017-06-20 15:57 ` Gaëtan Rivet 0 siblings, 1 reply; 6+ messages in thread From: terry.montague.1980 @ 2017-06-20 15:04 UTC (permalink / raw) To: users Hi Gaëtan, Its really only the net-i40e driver I need (for Intel XL710 cards). I'm not building DPDK itself as a shared library though. Best Regards Terry ----Original message---- >From : gaetan.rivet@6wind.com Date : 20/06/17 - 15:57 (BST) To : terry.montague.1980@btinternet.com Cc : users@dpdk.org Subject : Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. Hi, On Tue, Jun 20, 2017 at 03:47:07PM +0100, terry.montague.1980@btinternet.com wrote: > Hi there, > Please excuse what to some may appear to be an stupid question. > I'm trying to use DPDK with an existing C++ application on Linux, using Eclipse Neon.2 as the IDE due to the use of a lot of 3rd party libraries. I'm not using the DPDK build process with the .mk makefiles. I'm just linking to the prebuilt rte_ libs. > I have got the project to compile, but when running rte_eal_init() with some suitable arguments that I know to be good in a simple standalone application, the PMDs appear to be absent, so the app cannot probe any PCI devices. > Is there any way this approach is going to work, or do applications that use DPDK have to be compiled as per the example applications with rte.vars.mk/rte.extapp.mk ? > Thanks in advance. > Terry Which NIC are you using? Which PMD do you need? You can dynamically link specific DPDK drivers using -d in the EAL parameters. Note that using PMDs as dynamic libraries may slightly impair performances. -- Gaëtan Rivet 6WIND ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. 2017-06-20 15:04 ` terry.montague.1980 @ 2017-06-20 15:57 ` Gaëtan Rivet 2017-06-20 16:21 ` terry.montague.1980 0 siblings, 1 reply; 6+ messages in thread From: Gaëtan Rivet @ 2017-06-20 15:57 UTC (permalink / raw) To: terry.montague.1980; +Cc: users On Tue, Jun 20, 2017 at 04:04:50PM +0100, terry.montague.1980@btinternet.com wrote: > > > Hi Gaëtan, > > Its really only the net-i40e driver I need (for Intel XL710 cards). I'm not building DPDK itself as a shared library though. > Where are you getting your prebuilt rte_ libs? If you have the corresponding archive file, do you link rte_pmd_i40e? > Best Regards > > Terry > > > > ----Original message---- > From : gaetan.rivet@6wind.com > Date : 20/06/17 - 15:57 (BST) > To : terry.montague.1980@btinternet.com > Cc : users@dpdk.org > Subject : Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. > > Hi, > > On Tue, Jun 20, 2017 at 03:47:07PM +0100, terry.montague.1980@btinternet.com wrote: > > Hi there, > > Please excuse what to some may appear to be an stupid question. > > I'm trying to use DPDK with an existing C++ application on Linux, using Eclipse Neon.2 as the IDE due to the use of a lot of 3rd party libraries. I'm not using the DPDK build process with the .mk makefiles. I'm just linking to the prebuilt rte_ libs. > > I have got the project to compile, but when running rte_eal_init() with some suitable arguments that I know to be good in a simple standalone application, the PMDs appear to be absent, so the app cannot probe any PCI devices. > > Is there any way this approach is going to work, or do applications that use DPDK have to be compiled as per the example applications with rte.vars.mk/rte.extapp.mk ? > > Thanks in advance. > > Terry > > Which NIC are you using? Which PMD do you need? > > You can dynamically link specific DPDK drivers using -d in the EAL > parameters. Note that using PMDs as dynamic libraries may slightly > impair performances. > > -- > Gaëtan Rivet > 6WIND > > -- Gaëtan Rivet 6WIND ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. 2017-06-20 15:57 ` Gaëtan Rivet @ 2017-06-20 16:21 ` terry.montague.1980 2017-06-20 21:15 ` Gaëtan Rivet 0 siblings, 1 reply; 6+ messages in thread From: terry.montague.1980 @ 2017-06-20 16:21 UTC (permalink / raw) To: gaetan.rivet; +Cc: users Hi Gaetan, I mean I'm building DPDK before I link with my app eclipse. Switching CONFIG_RTE_BUILD_SHARED_LIB to 'y', rebuilding DPDK and adding -d options for the path as well as librte_pmd_i40e.so.1.1 going into rte_eal_init(), I'm seeing the devices being detected. Any ideas on this problem with libdpdk.so below ? Many thanks Terry EAL: Running eal_plugins_init EAL: open shared lib librte_pmd_i40e.so.1.1 EAL: open shared lib /usr/local/lib/librte_net.so.1.1 EAL: open shared lib /usr/local/lib/librte_port.so.3.1 EAL: open shared lib /usr/local/lib/libboost_random.so.1.63.0 EAL: open shared lib /usr/local/lib/libboost_math_c99l.so.1.63.0 EAL: open shared lib /usr/local/lib/libApp.so EAL: open shared lib /usr/local/lib/libmc_enc_vc1.so EAL: open shared lib /usr/local/lib/libboost_fiber.so EAL: open shared lib /usr/local/lib/libmc_dec_dv100.so EAL: open shared lib /usr/local/lib/libmc_mfimport.so EAL: open shared lib /usr/local/lib/librte_pmd_crypto_scheduler.so.1.1 EAL: open shared lib /usr/local/lib/librte_eal.so EAL: open shared lib /usr/local/lib/librte_mempool.so EAL: open shared lib /usr/local/lib/librte_pmd_bnxt.so.1.1 EAL: open shared lib /usr/local/lib/librte_mbuf.so EAL: open shared lib /usr/local/lib/libboost_math_c99f.so EAL: open shared lib /usr/local/lib/librte_pmd_bnxt.so EAL: open shared lib /usr/local/lib/libmc_config_vc3.so EAL: open shared lib /usr/local/lib/libboost_date_time.so.1.63.0 EAL: open shared lib /usr/local/lib/libboost_math_tr1.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_lpm.so EAL: open shared lib /usr/local/lib/libboost_context.so.1.63.0 EAL: open shared lib /usr/local/lib/libmc_enc_mp2v.so EAL: open shared lib /usr/local/lib/libPixelXMLProtocol.so EAL: open shared lib /usr/local/lib/libboost_random.so EAL: open shared lib /usr/local/lib/libboost_iostreams.so EAL: open shared lib /usr/local/lib/libmc_enc_j2k.so EAL: open shared lib /usr/local/lib/librte_pmd_bond.so EAL: open shared lib /usr/local/lib/libboost_chrono.so EAL: open shared lib /usr/local/lib/librte_meter.so EAL: open shared lib /usr/local/lib/librte_pmd_bond.so.1.1 EAL: open shared lib /usr/local/lib/libboost_log.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_hash.so.2.1 EAL: open shared lib /usr/local/lib/libboost_wserialization.so EAL: open shared lib /usr/local/lib/libboost_chrono.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_acl.so.2.1 EAL: open shared lib /usr/local/lib/libmc_parser_sdp.so EAL: open shared lib /usr/local/lib/librte_metrics.so.1.1 EAL: open shared lib /usr/local/lib/librte_pmd_ring.so.2.1 EAL: open shared lib /usr/local/lib/libmc_demux_mxf.so EAL: open shared lib /usr/local/lib/libmc_demux_dv.so EAL: open shared lib /usr/local/lib/librte_latencystats.so EAL: open shared lib /usr/local/lib/librte_pipeline.so.3.1 EAL: open shared lib /usr/local/lib/librte_cryptodev.so.2.1 EAL: open shared lib /usr/local/lib/libboost_filesystem.so EAL: open shared lib /usr/local/lib/libmc_demux_asf.so EAL: open shared lib /usr/local/lib/librte_pmd_skeleton_event.so EAL: open shared lib /usr/local/lib/libmc_demux_mp4.so EAL: open shared lib /usr/local/lib/libboost_program_options.so.1.63.0 EAL: open shared lib /usr/local/lib/libboost_serialization.so.1.63.0 EAL: open shared lib /usr/local/lib/libmc_bc_dec_avc.so EAL: open shared lib /usr/local/lib/librte_eventdev.so EAL: open shared lib /usr/local/lib/librte_ring.so EAL: open shared lib /usr/local/lib/libdemo_trans_audio_converter.so EAL: open shared lib /usr/local/lib/libboost_locale.so EAL: open shared lib /usr/local/lib/libboost_unit_test_framework.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_sched.so EAL: open shared lib /usr/local/lib/libboost_graph.so.1.63.0 EAL: open shared lib /usr/local/lib/libmc_enc_mpa.so EAL: open shared lib /usr/local/lib/librte_bitratestats.so.1.1 EAL: open shared lib /usr/local/lib/librte_cmdline.so.2.1 EAL: open shared lib /usr/local/lib/librte_pmd_lio.so.1.1 EAL: open shared lib /usr/local/lib/librte_pmd_af_packet.so EAL: open shared lib /usr/local/lib/libboost_regex.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_efd.so EAL: open shared lib /usr/local/lib/librte_pmd_fm10k.so.1.1 EAL: open shared lib /usr/local/lib/libboost_math_tr1l.so.1.63.0 EAL: open shared lib /usr/local/lib/libboost_timer.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_latencystats.so.1.1 EAL: open shared lib /usr/local/lib/libmc_bc_net_source.so EAL: open shared lib /usr/local/lib/librte_pmd_octeontx_ssovf.so.1.1 EAL: open shared lib /usr/local/lib/librte_pmd_thunderx_nicvf.so.1.1 EAL: open shared lib /usr/local/lib/librte_timer.so EAL: open shared lib /usr/local/lib/libboost_coroutine.so EAL: open shared lib /usr/local/lib/libboost_math_tr1l.so EAL: open shared lib /usr/local/lib/librte_mempool_ring.so EAL: open shared lib /usr/local/lib/libDNxHR.so EAL: open shared lib /usr/local/lib/libmc_mux_asf.so EAL: open shared lib /usr/local/lib/librte_cfgfile.so.2.1 EAL: open shared lib /usr/local/lib/librte_pmd_nfp.so.1.1 EAL: open shared lib /usr/local/lib/libmc_bc_enc_avc.so EAL: open shared lib /usr/local/lib/librte_eal.so.4.1 EAL: open shared lib /usr/local/lib/librte_pmd_vmxnet3_uio.so.1.1 EAL: open shared lib /usr/local/lib/librte_pmd_ark.so.1.1 EAL: open shared lib /usr/local/lib/librte_meter.so.1.1 EAL: open shared lib /usr/local/lib/librte_reorder.so EAL: open shared lib /usr/local/lib/libboost_fiber.so.1.63.0 EAL: open shared lib /usr/local/lib/libboost_iostreams.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_pmd_sfc_efx.so EAL: open shared lib /usr/local/lib/libboost_context.so EAL: open shared lib /usr/local/lib/libboost_type_erasure.so EAL: open shared lib /usr/local/lib/librte_lpm.so.2.1 EAL: open shared lib /usr/local/lib/libboost_thread.so EAL: open shared lib /usr/local/lib/libmc_net_source.so EAL: open shared lib /usr/local/lib/librte_efd.so.1.1 EAL: open shared lib /usr/local/lib/libboost_coroutine.so.1.63.0 EAL: open shared lib /usr/local/lib/librte_pmd_sw_event.so EAL: open shared lib /usr/local/lib/libmc_manifest_generator.so EAL: open shared lib /usr/local/lib/libAVX2Support.so EAL: open shared lib /usr/local/lib/libmc_dec_spic.so EAL: open shared lib /usr/local/lib/libPipeline.so EAL: open shared lib /usr/local/lib/librte_pmd_ark.so EAL: open shared lib /usr/local/lib/libmc_dec_mp2v.so EAL: open shared lib /usr/local/lib/librte_eventdev.so.1.1 EAL: open shared lib /usr/local/lib/librte_pmd_virtio.so.1.1 EAL: open shared lib /usr/local/lib/librte_pmd_cxgbe.so.1.1 EAL: open shared lib /usr/local/lib/libboost_unit_test_framework.so EAL: open shared lib /usr/local/lib/libdpdk.so EAL: /usr/local/lib/libdpdk.so: invalid ELF header EAL: FATAL: Cannot init plugins ----Original message---- >From : gaetan.rivet@6wind.com Date : 20/06/17 - 16:57 (BST) To : terry.montague.1980@btinternet.com Cc : users@dpdk.org Subject : Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. On Tue, Jun 20, 2017 at 04:04:50PM +0100, terry.montague.1980@btinternet.com wrote: > > > Hi Gaëtan, > > Its really only the net-i40e driver I need (for Intel XL710 cards). I'm not building DPDK itself as a shared library though. > Where are you getting your prebuilt rte_ libs? If you have the corresponding archive file, do you link rte_pmd_i40e? > Best Regards > > Terry > > > > ----Original message---- > From : gaetan.rivet@6wind.com > Date : 20/06/17 - 15:57 (BST) > To : terry.montague.1980@btinternet.com > Cc : users@dpdk.org > Subject : Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. > > Hi, > > On Tue, Jun 20, 2017 at 03:47:07PM +0100, terry.montague.1980@btinternet.com wrote: > > Hi there, > > Please excuse what to some may appear to be an stupid question. > > I'm trying to use DPDK with an existing C++ application on Linux, using Eclipse Neon.2 as the IDE due to the use of a lot of 3rd party libraries. I'm not using the DPDK build process with the .mk makefiles. I'm just linking to the prebuilt rte_ libs. > > I have got the project to compile, but when running rte_eal_init() with some suitable arguments that I know to be good in a simple standalone application, the PMDs appear to be absent, so the app cannot probe any PCI devices. > > Is there any way this approach is going to work, or do applications that use DPDK have to be compiled as per the example applications with rte.vars.mk/rte.extapp.mk ? > > Thanks in advance. > > Terry > > Which NIC are you using? Which PMD do you need? > > You can dynamically link specific DPDK drivers using -d in the EAL > parameters. Note that using PMDs as dynamic libraries may slightly > impair performances. > > -- > Gaëtan Rivet > 6WIND > > -- Gaëtan Rivet 6WIND ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. 2017-06-20 16:21 ` terry.montague.1980 @ 2017-06-20 21:15 ` Gaëtan Rivet 0 siblings, 0 replies; 6+ messages in thread From: Gaëtan Rivet @ 2017-06-20 21:15 UTC (permalink / raw) To: terry.montague.1980; +Cc: users On Tue, Jun 20, 2017 at 05:21:41PM +0100, terry.montague.1980@btinternet.com wrote: > > > Hi Gaetan, > > I mean I'm building DPDK before I link with my app eclipse. > Ok. You can thus take the librte_pmd_i40e.a file within your build result, and link against it. This should yield better result than using dynamic linking with the shared object. It's only a matter of giving the proper flags at compile time, you should have everything necessary. > Switching CONFIG_RTE_BUILD_SHARED_LIB to 'y', rebuilding DPDK and adding -d options for the path as well as librte_pmd_i40e.so.1.1 going into rte_eal_init(), I'm seeing the devices being detected. > > Any ideas on this problem with libdpdk.so below ? > Unfortunately no, sorry. I never use the DPDK this way (well, I also never really configured the DPDK myself). I do not know why the EAL react this way. However both for performance and as a way to bypass this issue, I'd suggest trying to use static linking and see if that's acceptable for you. You get better perf and the EAL plugin issue is unlikely to happen. > Many thanks > > Terry > > EAL: Running eal_plugins_init > EAL: open shared lib librte_pmd_i40e.so.1.1 > EAL: open shared lib /usr/local/lib/librte_net.so.1.1 > EAL: open shared lib /usr/local/lib/librte_port.so.3.1 > EAL: open shared lib /usr/local/lib/libboost_random.so.1.63.0 > EAL: open shared lib /usr/local/lib/libboost_math_c99l.so.1.63.0 > EAL: open shared lib /usr/local/lib/libApp.so > EAL: open shared lib /usr/local/lib/libmc_enc_vc1.so > EAL: open shared lib /usr/local/lib/libboost_fiber.so > EAL: open shared lib /usr/local/lib/libmc_dec_dv100.so > EAL: open shared lib /usr/local/lib/libmc_mfimport.so > EAL: open shared lib /usr/local/lib/librte_pmd_crypto_scheduler.so.1.1 > EAL: open shared lib /usr/local/lib/librte_eal.so > EAL: open shared lib /usr/local/lib/librte_mempool.so > EAL: open shared lib /usr/local/lib/librte_pmd_bnxt.so.1.1 > EAL: open shared lib /usr/local/lib/librte_mbuf.so > EAL: open shared lib /usr/local/lib/libboost_math_c99f.so > EAL: open shared lib /usr/local/lib/librte_pmd_bnxt.so > EAL: open shared lib /usr/local/lib/libmc_config_vc3.so > EAL: open shared lib /usr/local/lib/libboost_date_time.so.1.63.0 > EAL: open shared lib /usr/local/lib/libboost_math_tr1.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_lpm.so > EAL: open shared lib /usr/local/lib/libboost_context.so.1.63.0 > EAL: open shared lib /usr/local/lib/libmc_enc_mp2v.so > EAL: open shared lib /usr/local/lib/libPixelXMLProtocol.so > EAL: open shared lib /usr/local/lib/libboost_random.so > EAL: open shared lib /usr/local/lib/libboost_iostreams.so > EAL: open shared lib /usr/local/lib/libmc_enc_j2k.so > EAL: open shared lib /usr/local/lib/librte_pmd_bond.so > EAL: open shared lib /usr/local/lib/libboost_chrono.so > EAL: open shared lib /usr/local/lib/librte_meter.so > EAL: open shared lib /usr/local/lib/librte_pmd_bond.so.1.1 > EAL: open shared lib /usr/local/lib/libboost_log.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_hash.so.2.1 > EAL: open shared lib /usr/local/lib/libboost_wserialization.so > EAL: open shared lib /usr/local/lib/libboost_chrono.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_acl.so.2.1 > EAL: open shared lib /usr/local/lib/libmc_parser_sdp.so > EAL: open shared lib /usr/local/lib/librte_metrics.so.1.1 > EAL: open shared lib /usr/local/lib/librte_pmd_ring.so.2.1 > EAL: open shared lib /usr/local/lib/libmc_demux_mxf.so > EAL: open shared lib /usr/local/lib/libmc_demux_dv.so > EAL: open shared lib /usr/local/lib/librte_latencystats.so > EAL: open shared lib /usr/local/lib/librte_pipeline.so.3.1 > EAL: open shared lib /usr/local/lib/librte_cryptodev.so.2.1 > EAL: open shared lib /usr/local/lib/libboost_filesystem.so > EAL: open shared lib /usr/local/lib/libmc_demux_asf.so > EAL: open shared lib /usr/local/lib/librte_pmd_skeleton_event.so > EAL: open shared lib /usr/local/lib/libmc_demux_mp4.so > EAL: open shared lib /usr/local/lib/libboost_program_options.so.1.63.0 > EAL: open shared lib /usr/local/lib/libboost_serialization.so.1.63.0 > EAL: open shared lib /usr/local/lib/libmc_bc_dec_avc.so > EAL: open shared lib /usr/local/lib/librte_eventdev.so > EAL: open shared lib /usr/local/lib/librte_ring.so > EAL: open shared lib /usr/local/lib/libdemo_trans_audio_converter.so > EAL: open shared lib /usr/local/lib/libboost_locale.so > EAL: open shared lib /usr/local/lib/libboost_unit_test_framework.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_sched.so > EAL: open shared lib /usr/local/lib/libboost_graph.so.1.63.0 > EAL: open shared lib /usr/local/lib/libmc_enc_mpa.so > EAL: open shared lib /usr/local/lib/librte_bitratestats.so.1.1 > EAL: open shared lib /usr/local/lib/librte_cmdline.so.2.1 > EAL: open shared lib /usr/local/lib/librte_pmd_lio.so.1.1 > EAL: open shared lib /usr/local/lib/librte_pmd_af_packet.so > EAL: open shared lib /usr/local/lib/libboost_regex.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_efd.so > EAL: open shared lib /usr/local/lib/librte_pmd_fm10k.so.1.1 > EAL: open shared lib /usr/local/lib/libboost_math_tr1l.so.1.63.0 > EAL: open shared lib /usr/local/lib/libboost_timer.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_latencystats.so.1.1 > EAL: open shared lib /usr/local/lib/libmc_bc_net_source.so > EAL: open shared lib /usr/local/lib/librte_pmd_octeontx_ssovf.so.1.1 > EAL: open shared lib /usr/local/lib/librte_pmd_thunderx_nicvf.so.1.1 > EAL: open shared lib /usr/local/lib/librte_timer.so > EAL: open shared lib /usr/local/lib/libboost_coroutine.so > EAL: open shared lib /usr/local/lib/libboost_math_tr1l.so > EAL: open shared lib /usr/local/lib/librte_mempool_ring.so > EAL: open shared lib /usr/local/lib/libDNxHR.so > EAL: open shared lib /usr/local/lib/libmc_mux_asf.so > EAL: open shared lib /usr/local/lib/librte_cfgfile.so.2.1 > EAL: open shared lib /usr/local/lib/librte_pmd_nfp.so.1.1 > EAL: open shared lib /usr/local/lib/libmc_bc_enc_avc.so > EAL: open shared lib /usr/local/lib/librte_eal.so.4.1 > EAL: open shared lib /usr/local/lib/librte_pmd_vmxnet3_uio.so.1.1 > EAL: open shared lib /usr/local/lib/librte_pmd_ark.so.1.1 > EAL: open shared lib /usr/local/lib/librte_meter.so.1.1 > EAL: open shared lib /usr/local/lib/librte_reorder.so > EAL: open shared lib /usr/local/lib/libboost_fiber.so.1.63.0 > EAL: open shared lib /usr/local/lib/libboost_iostreams.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_pmd_sfc_efx.so > EAL: open shared lib /usr/local/lib/libboost_context.so > EAL: open shared lib /usr/local/lib/libboost_type_erasure.so > EAL: open shared lib /usr/local/lib/librte_lpm.so.2.1 > EAL: open shared lib /usr/local/lib/libboost_thread.so > EAL: open shared lib /usr/local/lib/libmc_net_source.so > EAL: open shared lib /usr/local/lib/librte_efd.so.1.1 > EAL: open shared lib /usr/local/lib/libboost_coroutine.so.1.63.0 > EAL: open shared lib /usr/local/lib/librte_pmd_sw_event.so > EAL: open shared lib /usr/local/lib/libmc_manifest_generator.so > EAL: open shared lib /usr/local/lib/libAVX2Support.so > EAL: open shared lib /usr/local/lib/libmc_dec_spic.so > EAL: open shared lib /usr/local/lib/libPipeline.so > EAL: open shared lib /usr/local/lib/librte_pmd_ark.so > EAL: open shared lib /usr/local/lib/libmc_dec_mp2v.so > EAL: open shared lib /usr/local/lib/librte_eventdev.so.1.1 > EAL: open shared lib /usr/local/lib/librte_pmd_virtio.so.1.1 > EAL: open shared lib /usr/local/lib/librte_pmd_cxgbe.so.1.1 > EAL: open shared lib /usr/local/lib/libboost_unit_test_framework.so > EAL: open shared lib /usr/local/lib/libdpdk.so > EAL: /usr/local/lib/libdpdk.so: invalid ELF header > EAL: FATAL: Cannot init plugins > > > ----Original message---- > From : gaetan.rivet@6wind.com > Date : 20/06/17 - 16:57 (BST) > To : terry.montague.1980@btinternet.com > Cc : users@dpdk.org > Subject : Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. > > On Tue, Jun 20, 2017 at 04:04:50PM +0100, terry.montague.1980@btinternet.com wrote: > > > > > > Hi Gaëtan, > > > > Its really only the net-i40e driver I need (for Intel XL710 cards). I'm not building DPDK itself as a shared library though. > > > > Where are you getting your prebuilt rte_ libs? > If you have the corresponding archive file, do you link rte_pmd_i40e? > > > Best Regards > > > > Terry > > > > > > > > ----Original message---- > > From : gaetan.rivet@6wind.com > > Date : 20/06/17 - 15:57 (BST) > > To : terry.montague.1980@btinternet.com > > Cc : users@dpdk.org > > Subject : Re: [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse. > > > > Hi, > > > > On Tue, Jun 20, 2017 at 03:47:07PM +0100, terry.montague.1980@btinternet.com wrote: > > > Hi there, > > > Please excuse what to some may appear to be an stupid question. > > > I'm trying to use DPDK with an existing C++ application on Linux, using Eclipse Neon.2 as the IDE due to the use of a lot of 3rd party libraries. I'm not using the DPDK build process with the .mk makefiles. I'm just linking to the prebuilt rte_ libs. > > > I have got the project to compile, but when running rte_eal_init() with some suitable arguments that I know to be good in a simple standalone application, the PMDs appear to be absent, so the app cannot probe any PCI devices. > > > Is there any way this approach is going to work, or do applications that use DPDK have to be compiled as per the example applications with rte.vars.mk/rte.extapp.mk ? > > > Thanks in advance. > > > Terry > > > > Which NIC are you using? Which PMD do you need? > > > > You can dynamically link specific DPDK drivers using -d in the EAL > > parameters. Note that using PMDs as dynamic libraries may slightly > > impair performances. > > > > -- > > Gaëtan Rivet > > 6WIND > > > > > > -- > Gaëtan Rivet > 6WIND > -- Gaëtan Rivet 6WIND ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2017-06-20 21:15 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-06-20 14:47 [dpdk-users] Using DPDK with a pre-existing C++ application compiled in Eclipse terry.montague.1980 2017-06-20 14:57 ` Gaëtan Rivet [not found] ` <18287610.38744.1497970879233.JavaMail.defaultUser@defaultHost> 2017-06-20 15:04 ` terry.montague.1980 2017-06-20 15:57 ` Gaëtan Rivet 2017-06-20 16:21 ` terry.montague.1980 2017-06-20 21:15 ` Gaëtan Rivet
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).