[nanomsg] Re: mingw & nanomsg

  • From: Michael <mwpowellhtx@xxxxxxxxx>
  • To: nanomsg@xxxxxxxxxxxxx
  • Date: Thu, 19 Nov 2015 02:58:51 -0500



On November 18, 2015 3:53:29 PM EST, Garrett D'Amore <garrett@xxxxxxxxxx> wrote:

I spent some time today trying to get a clean build of mingw and
nanomsg.
I failed, utterly.

After struggling to get AppVeyor to be able to build cmake + mingw, I
then
started tackling the problems. gmtime_r isn’t exposed properly,
neither is
_sprintf_s. Those were relatively easy to address, if annoying by
requiring extra #ifdef spaghetti.

But, then I ran into a bajillion problems in Winsock. It seems that
mingw
doesn’t expose the same definitions we need in Winsock. Perhaps it is
only
exposing the legacy Winsock API from Windows XP and earlier. I don’t
know.

And I don’t care.

I’m hereby formally stating, nanomsg does not support mingw / gcc on
Windows. Visual Studio is a free download. You can use a CLI with
cmake
to build even.

Don't blame you one bit. VS is IMO the de facto standard for Windows based
C/C++ development. gcc/Eclipse is also possible I suppose but why when VS is
there and quite literally leading the C++ standards charge.

Also, I'm not sure Winsock2 wouldn't be more current and stand a better chance
for success. Especially if your strategy is to leave the selects behind.

HTH

I cannot and will not invest my time and energy to support a
compilation
environment solely for its own sake. There is no justification for
doing
so, when Visual Studio can be used for the same uses that mingw can;
trying
to support a mutant platform / environment is simply NOT worth the
added
complexity.

*THAT* said, if someone can show me some simple compilation flags that
turn
mingw into a sane environment, which properly exposes the full Win32
API.
I’m happy to support that. But from what I can tell, the environment
that
mingw exposes is *different* than the one Studio exposes. (Even if its
a
compile time difference only.)

I’m hereby closing all “Fix MinGW … blah blah blah” bugs as WILL NOT
FIX.

If someone else has the energy and wants to add that complexity, and
sustain it, please feel free to fork it on github. :-)

- Garrett

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Other related posts: