DPDK patches and discussions
 help / color / mirror / Atom feed
From: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
To: Nick Connolly <nick.connolly@mayadata.io>
Cc: Tal Shnaiderman <talshn@nvidia.com>,
	Narcisa Ana Maria Vasile <navasile@linux.microsoft.com>,
	Dmitry Malloy <dmitrym@microsoft.com>,
	Pallavi Kadam <pallavi.kadam@intel.com>,
	Tal Shnaiderman <talshn@mellanox.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH] eal/windows: fix link error with MinGW
Date: Sat, 21 Nov 2020 23:47:25 +0300	[thread overview]
Message-ID: <20201121234725.6b9c823d@sovereign> (raw)
In-Reply-To: <a3ca2e1f-4e1f-ef18-6533-1b8ab42fb054@mayadata.io>

Hi Nick,

Thanks for detailed explanation. It can be reproduced even without DPDK:

#include <windows.h>
#include <devguid.h>

int
main(int argc, char **argv) {
    return (int)&GUID_DEVCLASS_NET;
}

This links with clang, but not with MinGW-w64. AFAIK, it should not link,
because INITGUID is not defined. @DmitryM, @Naty, correct me if I'm wrong.
So I agree your fix is needed.


> Sure - latest MinGW-w64 (v8.0.0 I believe, but the versioning isn't too 
> clear to me!).

This is correct, MinGW-w64 version is different from GCC version, so it's
MinGW-w64 8.0.0 with GCC 8.1.0.


> [...] Arguably, it would perhaps be better to define 
> INITGUID in the source files that use the guids instead of in a shared 
> header, but I think this can safely be left until after 20.11 is 
> finalized - if there's any impact on the code produced it will be 
> negligible.

I disagree. Just because we have rte_windows.h to properly plug Windows SDK
in, other DPDK code doesn't need to care about these details. Unused GUIDs do
take some space in static libraries, but IMO it's a fair trade for ease of
development. They shouldn't have any impact on resulting binaries.

  parent reply	other threads:[~2020-11-21 20:47 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-20 21:12 Nick Connolly
2020-11-20 22:41 ` Tal Shnaiderman
2020-11-20 23:43   ` Nick Connolly
2020-11-20 23:44     ` Nick Connolly
2020-11-21 20:47     ` Dmitry Kozlyuk [this message]
2020-11-21 21:50       ` Nick Connolly
2020-11-21 22:02 ` Dmitry Kozlyuk
2020-11-21 22:54 ` [dpdk-dev] [PATCH v2] " Nick Connolly
2020-11-22  7:27   ` Tal Shnaiderman
2020-11-22  8:45 ` [dpdk-dev] [PATCH v3] " Nick Connolly
2020-11-22  9:00   ` Tal Shnaiderman
2020-11-22 17:57     ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201121234725.6b9c823d@sovereign \
    --to=dmitry.kozliuk@gmail.com \
    --cc=dev@dpdk.org \
    --cc=dmitrym@microsoft.com \
    --cc=navasile@linux.microsoft.com \
    --cc=nick.connolly@mayadata.io \
    --cc=pallavi.kadam@intel.com \
    --cc=talshn@mellanox.com \
    --cc=talshn@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).