<div dir="ltr"><div dir="ltr">Thanks - very helpful info!</div><div dir="ltr">Let me know about the VS 2022 build when you have a chance to check it.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Apr 22, 2022 at 1:15 PM Christian Franke <<a href="mailto:Christian.Franke@t-online.de">Christian.Franke@t-online.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Eaton,<br>
<br>
Eaton Zveare wrote:<br>
> ...<br>
> >> /If you plan to use Linux-like tools more often, I would recommend <br>
> to use Cygwin./<br>
><br>
> I think that adds a dependency on a cygwin dll though? If so, that is <br>
> not appealing.<br>
<br>
Yes and no.<br>
"./configure" without arguments results in Cygwin binaries which <br>
requires some cyg*.dll.<br>
"./configure --build=$(./config.guess) --host=x86_64-w64-mingw32" <br>
results in non-Cygwin binaries.<br>
<br>
<br>
> >> /The make commands for VC16 (VS2019) are now:/<br>
> >> /make config-vc/<br>
> >> ...<br>
><br>
> That command works, but Visual Studio still won't compile: <br>
> <a href="https://i.imgur.com/nmIAy9h.png" rel="noreferrer" target="_blank">https://i.imgur.com/nmIAy9h.png</a><br>
> I should note I am using Visual Studio 2022. Is there a firm <br>
> dependency on 2019, or is there something I can change in the project <br>
> settings to make it work in 2022?<br>
<br>
I don't know and will try with VS 2022 soon and commit the related <br>
project files.<br>
<br>
<br>
><br>
> >> /Note that VC is never used for release and CI <br>
> (<a href="https://builds.smartmontools.org/" rel="noreferrer" target="_blank">https://builds.smartmontools.org/</a>) binaries for Windows. These are <br>
> always cross-compiled using a Docker image with Linux and Mingw-w64./<br>
> /<br>
> /<br>
> Is there any difference between VC, MSYS2/MINGW64 on Windows, and <br>
> cross-compiled builds on Linux or is it just a matter of environment <br>
> preference?<br>
<br>
Any binaries produced by (the same version of) the Mingw-w64 toolchain <br>
should be similar, regardless of build platform. One reason we do <br>
cross-compiling is that it eases discussions if another malware scanner <br>
reports another false positive. Another is that VS is closed source and <br>
even the community edition requires registration. Disadvantages of <br>
Mingw-w64 are the lack of support of Control Flow Guard and the <br>
inability to statically link without the need of msvcrt.dll during runtime.<br>
<br>
Regards,<br>
Christian<br>
<br>
</blockquote></div></div>