DPDK patches and discussions
 help / color / mirror / Atom feed
From: Tal Shnaiderman <talshn@mellanox.com>
To: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Cc: Thomas Monjalon <thomas@monjalon.net>,
	"ranjit.menon@intel.com" <ranjit.menon@intel.com>,
	"pallavi.kadam@intel.com" <pallavi.kadam@intel.com>,
	Harini Ramakrishnan <Harini.Ramakrishnan@microsoft.com>,
	"navasile@linux.microsoft.com" <navasile@linux.microsoft.com>,
	"bruce.richardson@intel.com" <bruce.richardson@intel.com>,
	William Tu <u9012063@gmail.com>,
	"Dmitry Malloy (MESHCHANINOV)" <dmitrym@microsoft.com>,
	Fady Bader <fady@mellanox.com>,
	Tasnim Bashar <tbashar@mellanox.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] Handling missing export functions in MSVC linkage
Date: Mon, 8 Jun 2020 15:06:24 +0000	[thread overview]
Message-ID: <AM0PR05MB531324DA98D3D3D8970773C4A9850@AM0PR05MB5313.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <20200608030932.5d09c061@sovereign>

> Subject: Re: Handling missing export functions in MSVC linkage
> On Sun, 7 Jun 2020 12:26:56 +0000
> Tal Shnaiderman <talshn@mellanox.com> wrote:
> > In clang build the .map file is converted into Module-Definition (.Def) File.
> If you create a .def manually, it will override the generation from .map. Of
> cause, this adds manual work and ideally all .def files should be generated.

Right, eal uses this ability, however in the metrics lib this will not be sufficient 
since in case jansson is found (and it does have Windows support) we do want
to export the full .map file

> > Is there a way to instruct the linker to ignore missing functions in the def
> file?
> There is /FORCE:UNRESOLVED, but it will ignore *any* unresolved reference,
> that's why I'm against using it---this can lead to hard-to-diagnose errors.
> https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.
> microsoft.com%2Fen-us%2Fcpp%2Fbuild%2Freference%2Fforce-force-file-
> output%3Fview%3Dvs-
> 2019&amp;data=02%7C01%7Ctalshn%40mellanox.com%7Cee173c939f094360
> 14f708d80b403a2d%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C6
> 37271717789602353&amp;sdata=AfIjZd5K2Grztih%2Fu7utJQZimsjpCX7qgxn0
> Z9n0hd0%3D&amp;reserved=0
> The only proper way I see is forgenertor script to analyze both names .map
> and symbols .lib to filter out undefined functions. Dumpbin.exe should be
> able to list symbols and it comes with MS Windows SDK, IIRC.

Looks like a good solution to me, however I'm not familiar with the availability of Dumpbin
We can discuss this solution in the upcoming community call, thanks!

> --
> Dmitry Kozlyuk

      parent reply	other threads:[~2020-06-08 15:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-07 12:26 Tal Shnaiderman
2020-06-08  0:09 ` Dmitry Kozlyuk
2020-06-08  8:33   ` David Marchand
2021-03-26  8:39     ` Thomas Monjalon
2021-03-26 14:14       ` [dpdk-dev] [EXTERNAL] " Tyler Retzlaff
2020-06-08 15:06   ` Tal Shnaiderman [this message]

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:

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

  git send-email \
    --in-reply-to=AM0PR05MB531324DA98D3D3D8970773C4A9850@AM0PR05MB5313.eurprd05.prod.outlook.com \
    --to=talshn@mellanox.com \
    --cc=Harini.Ramakrishnan@microsoft.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=dmitry.kozliuk@gmail.com \
    --cc=dmitrym@microsoft.com \
    --cc=fady@mellanox.com \
    --cc=navasile@linux.microsoft.com \
    --cc=pallavi.kadam@intel.com \
    --cc=ranjit.menon@intel.com \
    --cc=tbashar@mellanox.com \
    --cc=thomas@monjalon.net \
    --cc=u9012063@gmail.com \


* 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).