[dpdk-dev] [PATCH v2 20/33] mlx5/windows: add mlx5 meson file
Dmitry Kozlyuk
dmitry.kozliuk at gmail.com
Sat Dec 12 00:42:05 CET 2020
On Thu, 10 Dec 2020 17:06:35 +0200, Tal Shnaiderman wrote:
> File drivers/common/mlx5/windows/meson.build is added to enable mlx5
> source files compilation under common windows directory.
> A Devx SDK tool must be installed to export two external H files:
> mlx5devx.h and mlx5_ifc_devx.h. The installation is based on environment
> variable DEVX_INC_PATH. In addition a DLL lib file is installed based on
> environment variable DEVX_LIB_PATH. The meson file is using the
> environment variables for compilation and linkage.
I installed WinOF-2 for Windows Server 2019 from this page:
https://www.mellanox.com/products/adapter-software/ethernet/windows/winof-2
Then I installed DevX SDK from C:\Program Files\Mellanox\DevX SDK
and set environment variables:
$env:DEVX_INC_PATH = "C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc"
$env:DEVX_LIB_PATH = "C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\lib"
Meson complained no more, but the build failed, log is below.
What am I missing? Note: I'm building the whole series.
Another question, why there's a clang restriction?
[149/203] Compiling C object drivers/a715181@@rte_common_mlx5 at sta/common_mlx5_mlx5_common.c.obj.
FAILED: drivers/a715181@@rte_common_mlx5 at sta/common_mlx5_mlx5_common.c.obj
clang @drivers/a715181@@rte_common_mlx5 at sta/common_mlx5_mlx5_common.c.obj.rsp
In file included from ../../drivers/common/mlx5/mlx5_common.c:13:
In file included from ..\..\drivers\common/mlx5/mlx5_common.h:18:
..\..\drivers\common/mlx5/mlx5_prm.h:363:31: error: field has incomplete type 'struct mlx5_wqe_srq_next_seg'
struct mlx5_wqe_srq_next_seg next_seg;
^
..\..\drivers\common/mlx5/mlx5_prm.h:363:9: note: forward declaration of 'struct mlx5_wqe_srq_next_seg'
struct mlx5_wqe_srq_next_seg next_seg;
^
..\..\drivers\common/mlx5/mlx5_prm.h:364:27: error: field has incomplete type 'struct mlx5_wqe_data_seg'
struct mlx5_wqe_data_seg dseg;
^
..\..\drivers\common/mlx5/mlx5_prm.h:364:9: note: forward declaration of 'struct mlx5_wqe_data_seg'
struct mlx5_wqe_data_seg dseg;
^
In file included from ../../drivers/common/mlx5/mlx5_common.c:14:
In file included from ..\..\drivers\common/mlx5\windows\mlx5_common_os.h:15:
In file included from ..\..\drivers\common/mlx5\mlx5_common_mr.h:19:
..\..\drivers\common/mlx5/mlx5_common_mp.h:29:7: warning: forward references to 'enum' types are a Microsoft extension [-Wmicrosoft-enum-forward-reference]
enum ibv_wq_state state; /* WQ requested state. */
^
In file included from ../../drivers/common/mlx5/mlx5_common.c:14:
In file included from ..\..\drivers\common/mlx5\windows\mlx5_common_os.h:16:
In file included from ..\..\drivers\common/mlx5\windows/mlx5_win_ext.h:12:
In file included from C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc\mlx5devx.h:26:
C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc/mlx5_ifc_devx.h:95:45: error: field has incomplete type 'struct mlx5_ifc_dest_format_struct_bits'
struct mlx5_ifc_dest_format_struct_bits dest;
^
C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc/mlx5_ifc_devx.h:95:12: note: forward declaration of 'struct mlx5_ifc_dest_format_struct_bits'
struct mlx5_ifc_dest_format_struct_bits dest;
^
../../drivers/common/mlx5/mlx5_common.c:323:15: warning: implicit declaration of function 'mlx5_os_get_devx_uar_base_addr' is invalid in C99 [-Wimplicit-function-declaration]
base_addr = mlx5_os_get_devx_uar_base_addr(uar);
^
../../drivers/common/mlx5/mlx5_common.c:323:13: warning: incompatible integer to pointer conversion assigning to 'void *' from 'int' [-Wint-conversion]
base_addr = mlx5_os_get_devx_uar_base_addr(uar);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 warnings and 3 errors generated.
[151/203] Compiling C object drivers/a715181@@rte_common_mlx5 at sta/common_mlx5_mlx5_malloc.c.obj.
FAILED: drivers/a715181@@rte_common_mlx5 at sta/common_mlx5_mlx5_malloc.c.obj
clang @drivers/a715181@@rte_common_mlx5 at sta/common_mlx5_mlx5_malloc.c.obj.rsp
In file included from ../../drivers/common/mlx5/mlx5_malloc.c:11:
In file included from ..\..\drivers\common/mlx5/mlx5_common_utils.h:8:
In file included from ..\..\drivers\common/mlx5/mlx5_common.h:18:
..\..\drivers\common/mlx5/mlx5_prm.h:363:31: error: field has incomplete type 'struct mlx5_wqe_srq_next_seg'
struct mlx5_wqe_srq_next_seg next_seg;
^
..\..\drivers\common/mlx5/mlx5_prm.h:363:9: note: forward declaration of 'struct mlx5_wqe_srq_next_seg'
struct mlx5_wqe_srq_next_seg next_seg;
^
..\..\drivers\common/mlx5/mlx5_prm.h:364:27: error: field has incomplete type 'struct mlx5_wqe_data_seg'
struct mlx5_wqe_data_seg dseg;
^
..\..\drivers\common/mlx5/mlx5_prm.h:364:9: note: forward declaration of 'struct mlx5_wqe_data_seg'
struct mlx5_wqe_data_seg dseg;
^
In file included from ../../drivers/common/mlx5/mlx5_malloc.c:12:
In file included from ..\..\drivers\common/mlx5\windows\mlx5_common_os.h:15:
In file included from ..\..\drivers\common/mlx5\mlx5_common_mr.h:19:
..\..\drivers\common/mlx5/mlx5_common_mp.h:29:7: warning: forward references to 'enum' types are a Microsoft extension [-Wmicrosoft-enum-forward-reference]
enum ibv_wq_state state; /* WQ requested state. */
^
In file included from ../../drivers/common/mlx5/mlx5_malloc.c:12:
In file included from ..\..\drivers\common/mlx5\windows\mlx5_common_os.h:16:
In file included from ..\..\drivers\common/mlx5\windows/mlx5_win_ext.h:12:
In file included from C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc\mlx5devx.h:26:
C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc/mlx5_ifc_devx.h:95:45: error: field has incomplete type 'struct mlx5_ifc_dest_format_struct_bits'
struct mlx5_ifc_dest_format_struct_bits dest;
^
C:\Program Files\Mellanox\MLNX_WinOF2_DevX_SDK\inc/mlx5_ifc_devx.h:95:12: note: forward declaration of 'struct mlx5_ifc_dest_format_struct_bits'
struct mlx5_ifc_dest_format_struct_bits dest;
^
1 warning and 3 errors generated.
[154/203] Compiling C object lib/76b5a35@@rte_hash at sta/librte_hash_rte_cuckoo_hash.c.obj.
ninja: build stopped: subcommand failed.
More information about the dev
mailing list