[dpdk-dev] building shared library
newman555p at gmail.com
Tue Nov 11 16:16:30 CET 2014
after building DPDK libs as shared libraries and linking it, I'm back to my
first problem: rte_eal_driver_register() never gest called and my app
crashes since there are no drivers registered. As previously mentioned, in
regular DPDK user app this functions is called for every driver before
On Tue, Nov 11, 2014 at 3:44 PM, Newman Poborsky <newman555p at gmail.com>
> Hi Sergio,
> no, that sounds good, thank you. Since I'm not that familiar with DPDK
> build system, where should this option be set? In 'lib' folder's Makefile?
> Thank you once again!
> On Tue, Nov 11, 2014 at 3:18 PM, Sergio Gonzalez Monroy <
> sergio.gonzalez.monroy at intel.com> wrote:
>> On Tue, Nov 11, 2014 at 01:10:29PM +0100, Newman Poborsky wrote:
>> > Hi,
>> > I want to build one .so file with my app (it contains API that I want to
>> > call through JNI) and all DPDK libs that I use in my app.
>> > As I've already mentioned, when I build and start my dpdk app as a
>> > standalone application, I can see that before main() is called, there
>> is a
>> > call to 'rte_eal_driver_register()' function for every driver. When I
>> > .so file, this does not happen and no driver is registered so everyting
>> > after rte_eal_init() fails.
>> Hi Newman,
>> AFAIK the current build system does not support that.
>> You can build DPDK as shared libs by setting the following config option:
>> Then build your app as an .so that links against DPDK libs, so you have
>> explicit dependencies (such dependencies should show with ldd).
>> Is there any reason why you want everything to be a single .so ?
>> I don't know much about how Java loads DSOs but I reckon that it must
>> explicit dependencies such as libc.
>> > BR,
>> > Newman
More information about the dev