[dpdk-dev] [PATCH v2] ring: build on Windows

Ranjit Menon ranjit.menon at intel.com
Wed May 20 22:46:31 CEST 2020


On 5/20/2020 3:44 AM, Fady Bader wrote:
> Exported per_lcore__rte_errno function to compile ring for windows.
>
> compilation error logs:
> librte_ring_rte_ring.c.obj : error LNK2019: unresolved
> external symbol per_lcore__rte_errno referenced in
> function rte_ring_lookup
>
> The cause was that per_lcore__rte_errno function wasn't included
> in the export list.
> To solve this per_lcore__rte_errno was added to the Windows export
> list.
>
> Signed-off-by: Fady Bader <fady at mellanox.com>
> Depends-on: series-9374 ("Windows basic memory management")
> ---
>   lib/librte_eal/rte_eal_exports.def | 1 +
>   lib/librte_eal/rte_eal_version.map | 3 +++
>   lib/meson.build                    | 5 ++++-
>   3 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/lib/librte_eal/rte_eal_exports.def b/lib/librte_eal/rte_eal_exports.def
> index 854b83bcd..cbb6b8cfe 100644
> --- a/lib/librte_eal/rte_eal_exports.def
> +++ b/lib/librte_eal/rte_eal_exports.def
> @@ -1,5 +1,6 @@
>   EXPORTS
>   	__rte_panic
> +	per_lcore__rte_errno
>   	rte_calloc
>   	rte_calloc_socket
>   	rte_eal_get_configuration
> diff --git a/lib/librte_eal/rte_eal_version.map b/lib/librte_eal/rte_eal_version.map
> index bdd014638..0f1b983b8 100644
> --- a/lib/librte_eal/rte_eal_version.map
> +++ b/lib/librte_eal/rte_eal_version.map
> @@ -390,4 +390,7 @@ EXPERIMENTAL {
>   	rte_trace_point_lookup;
>   	rte_trace_regexp;
>   	rte_trace_save;
> +
> +	# added in 20.08
> +	__emutls_v.per_lcore__rte_errno;
>   };
> diff --git a/lib/meson.build b/lib/meson.build
> index d190d84ef..98ee5ec57 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -36,7 +36,10 @@ libraries = [
>   	'flow_classify', 'bpf', 'graph', 'node']
>   
>   if is_windows
> -	libraries = ['kvargs','eal'] # only supported libraries for windows
> +	libraries = [
> +	'kvargs',
> +	'eal',
> +	'ring'] # only supported libraries for windows

Please tab out the list of libraries above for formatting purposes.

Also, to make future changes simpler, you could do this as:

libraries = [
         'kvargs',
         'eal',
         'ring',
         ] # only supported libraries for windows


ranjit m.



More information about the dev mailing list