Bug 894 - [dpdk-20.11.4] lib/librte_eal.a.p/librte_eal_common_rte_random.c.obj build failed on WIN10 with clang8.0.0
Summary: [dpdk-20.11.4] lib/librte_eal.a.p/librte_eal_common_rte_random.c.obj build fa...
Status: RESOLVED FIXED
Alias: None
Product: DPDK
Classification: Unclassified
Component: meson (show other bugs)
Version: 20.11
Hardware: All Windows
: Normal normal
Target Milestone: ---
Assignee: Dmitry Kozlyuk
URL:
Depends on:
Blocks:
 
Reported: 2021-12-07 10:44 CET by longfengx.liang@intel.com
Modified: 2021-12-08 10:08 CET (History)
1 user (show)



Attachments

Description longfengx.liang@intel.com 2021-12-07 10:44:15 CET
1.DPDK version:

commit bab4318634e0d2276e8bae5ea18789cfda813c70
Author: Xueming Li <xuemingl@nvidia.com>
Date:   Tue Dec 7 00:02:07 2021 +0800

    version: 20.11.4-rc1

2.OS version:
   WIN10-64
   Compiler: x86_64-windows-clang
   clang version:8.0.0

3.failed log:
FAILED: lib/librte_eal.a.p/librte_eal_common_rte_random.c.obj 
"clang" "-Ilib\librte_eal.a.p" "-Ilib" "-I..\lib" "-I." "-I.." "-Iconfig" "-I..\config" "-Ilib\librte_eal\include" "-I..\lib\librte_eal\include" "-Ilib\librte_eal\windows\include" "-I..\lib\librte_eal\windows\include" "-Ilib\librte_eal\x86\include" "-I..\lib\librte_eal\x86\include" "-Ilib\librte_eal\common" "-I..\lib\librte_eal\common" "-Ilib\librte_eal" "-I..\lib\librte_eal" "-Ilib\librte_kvargs" "-I..\lib\librte_kvargs" "-Xclang" "-fcolor-diagnostics" "-pipe" "-D_FILE_OFFSET_BITS=64" "-Wall" "-Winvalid-pch" "-O3" "-include" "rte_config.h" "-Wextra" "-Wcast-qual" "-Wdeprecated" "-Wformat" "-Wformat-nonliteral" "-Wformat-security" "-Wmissing-declarations" "-Wmissing-prototypes" "-Wnested-externs" "-Wold-style-definition" "-Wpointer-arith" "-Wsign-compare" "-Wstrict-prototypes" "-Wundef" "-Wwrite-strings" "-Wno-address-of-packed-member" "-Wno-missing-field-initializers" "-D_GNU_SOURCE" "-D_WIN32_WINNT=0x0A00" "-march=native" "-DALLOW_EXPERIMENTAL_API" "-DALLOW_INTERNAL_API" "-DABI_VERSION=\"21.0\"" -MD -MQ lib/librte_eal.a.p/librte_eal_common_rte_random.c.obj -MF "lib\librte_eal.a.p\librte_eal_common_rte_random.c.obj.d" -o lib/librte_eal.a.p/librte_eal_common_rte_random.c.obj "-c" ../lib/librte_eal/common/rte_random.c
In file included from ../lib/librte_eal/common/rte_random.c:13:
In file included from ..\lib\librte_eal\include\rte_eal.h:20:
In file included from ..\lib\librte_eal\include\rte_per_lcore.h:25:
In file included from ..\lib\librte_eal\windows\include\pthread.h:21:
In file included from ..\lib\librte_eal\windows\include\rte_windows.h:22:
In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\windows.h:171:
In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared\windef.h:24:
In file included from C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared\minwindef.h:182:
C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um\winnt.h:3275:1: error: conflicting types for '_m_prefetchw'
_m_prefetchw (
^
C:\Program Files\LLVM\lib\clang\8.0.0\include\prfchwintrin.h:64:1: note: previous definition is here
_m_prefetchw(void *__P)
^
1 error generated.
[35/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_alarm.c.obj
[36/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_lcore.c.obj
[37/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_debug.c.obj
[38/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_memory.c.obj
[39/185] Compiling C object lib/librte_eal.a.p/librte_eal_common_rte_service.c.obj
[40/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_hugepages.c.obj
[41/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_log.c.obj
[42/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal.c.obj
[43/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_interrupts.c.obj
[44/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_mp.c.obj
[45/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_memalloc.c.obj
[46/185] Compiling C object lib/librte_eal.a.p/librte_eal_windows_eal_timer.c.obj
[47/185] Compiling C object lib/librte_eal.a.p/librte_eal_common_eal_common_dynmem.c.obj
ninja: build stopped
Comment 1 Dmitry Kozlyuk 2021-12-07 15:17:38 CET
Please try this fix:
http://inbox.dpdk.org/stable/20211207141644.369624-1-dmitry.kozliuk@gmail.com/T/#u
Comment 2 longfengx.liang@intel.com 2021-12-08 10:03:45 CET
Used DPDK 20.11.4-rc1 add this patch verify passed on WIN10-64.
Comment 3 longfengx.liang@intel.com 2021-12-08 10:08:17 CET
Update status to fixed.

Note You need to log in before you can comment on or make changes to this bug.