[dpdk-dev] [RFC] rcu: build on Windows

Dharmik Thakkar Dharmik.Thakkar at arm.com
Tue Oct 20 14:51:14 CEST 2020



> On Oct 20, 2020, at 3:34 AM, Dmitry Kozlyuk <dmitry.kozliuk at gmail.com> wrote:
> 
> On Tue, 20 Oct 2020 10:13:11 +0200, David Marchand wrote:
>> On Tue, Oct 20, 2020 at 1:34 AM Dharmik Thakkar <dharmik.thakkar at arm.com> wrote:
>>> 
>>> Build the lib for Windows.
>>> 
>>> Change-Id: Ib83431a9ee56a7b38445f0474cb9a12b17cf18f9
>>> Signed-off-by: Dharmik Thakkar <dharmik.thakkar at arm.com>
>>> ---
>>> lib/meson.build | 1 +
>>> 1 file changed, 1 insertion(+)
>>> 
>>> diff --git a/lib/meson.build b/lib/meson.build
>>> index dd55b5cb53e4..1bb019720c6a 100644
>>> --- a/lib/meson.build
>>> +++ b/lib/meson.build
>>> @@ -41,6 +41,7 @@ if is_windows
>>>                'telemetry',
>>>                'eal',
>>>                'ring',
>>> +               'rcu',
>>>                'mempool', 'mbuf', 'net', 'meter', 'ethdev', 'pci',
>>>                'cmdline',
>>>                'hash',
>>> --
>>> 2.17.1
>>> 
>> 
>> If we skip the new failures in Intel CI due to kni build being broken,
>> I see that Windows build is fine but I have no log of it.
>> UNH lab skipped testing this patch, as it is a RFC (iiuc).
>> We need more tests, but on the principle, what do you think about enabling rcu?
> 
> Builds OK with Linux/GCC (cross), Windows/MinGW-w64, Windows/clang.
> 
> Tested-by: Dmitry Kozlyuk <dmitry.kozliuk at gmail.com>

Thank you for testing, Dmitry!

I tried cross-compilation on Linux (Ubuntu 18.04) with MinGW-w64 toolchain, but I am seeing some compilation error:

../lib/librte_eal/common/eal_common_dev.c: In function ‘rte_dev_probe’:
../lib/librte_eal/common/eal_common_dev.c:215:12: error: ‘ENOMSG’ undeclared (first use in this function); did you mean ‘NPMSG’?
    return -ENOMSG;
            ^~~~~~
            NPMSG
../lib/librte_eal/common/eal_common_dev.c:215:12: note: each undeclared identifier is reported only once for each function it appears in
../lib/librte_eal/common/eal_common_dev.c: In function ‘rte_dev_remove’:
../lib/librte_eal/common/eal_common_dev.c:361:12: error: ‘ENOMSG’ undeclared (first use in this function); did you mean ‘NPMSG’?
    return -ENOMSG;
            ^~~~~~
            NPMSG

[52/178] Compiling C object 'lib/lib@@rte_eal at sta/librte_eal_windows_eal_memory.c.obj'.
ninja: build stopped: subcommand failed.


Any help is appreciated.




More information about the dev mailing list