zeromq / libzmq

ZeroMQ core engine in C++, implements ZMTP/3.1
https://www.zeromq.org
Mozilla Public License 2.0
9.75k stars 2.36k forks source link

Build fails with Visual C++ 2017 due to undefined sockaddr_un #3949

Closed TomasRiker closed 2 years ago

TomasRiker commented 4 years ago

Visual C++ 2017 doesn't know the sockaddr_un type, which is used by ipc_address.hpp/ipc_address.cpp. That seems to be the only thing preventing libzmq from building. Adding a definition like this helped me compile the library at least (doesn't seem to work properly, though):

typedef unsigned int sa_family_t;

struct sockaddr_un
{
    sa_family_t sun_family; /* AF_UNIX */
    char sun_path[108];     /* Pathname */
};

There were no such problems with the latest release, 4.3.2.

sigiesec commented 4 years ago

There seems to be an issue with feature detection. Can you provide the output of cmake (on a clean checkout) and the CMake*.log files?

TomasRiker commented 4 years ago

Sure.

CMake's output the first time I do "Configure":

Selecting Windows SDK version 10.0.16299.0 to target Windows 10.0.18363.
The C compiler identification is MSVC 19.16.27040.0
The CXX compiler identification is MSVC 19.16.27040.0
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/cl.exe
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/cl.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Detecting C compile features
Detecting C compile features - done
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/cl.exe
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x64/cl.exe -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Detecting CXX compile features
Detecting CXX compile features - done
Looking for pthread.h
Looking for pthread.h - not found
Found Threads: TRUE  
Detected ZMQ Version - 4.3.3
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
Build and install draft classes and methods
Using radix tree implementation to manage subscriptions
Enable WebSocket transport
Could NOT find GnuTLS (missing: GNUTLS_LIBRARY GNUTLS_INCLUDE_DIR) (Required is at least version "3.6.7")
CMake Warning at CMakeLists.txt:194 (message):
  No WSS support, you may want to install GnuTLS and run cmake again

Using builtin sha1
Could NOT find sodium (missing: SODIUM_LIBRARIES SODIUM_INCLUDE_DIRS) 
CMake Warning at CMakeLists.txt:259 (message):
  libsodium not installed, instead using builtin tweetnacl, you may want to
  install libsodium and run cmake again

Using tweetnacl for CURVE security
Detected _WIN32_WINNT from CMAKE_SYSTEM_VERSION: 0x0A00
Using polling method in I/O threads: epoll
Including wepoll
Using polling method in zmq_poll(er)_* API: poll
Using 64 bytes alignment for lock-free data structures
Looking for include file windows.h
Looking for include file windows.h - found
Looking for include files winsock2.h, afunix.h
Looking for include files winsock2.h, afunix.h - found
Looking for include file condition_variable
Looking for include file condition_variable - found
Using condition_variable_t implementation: stl11
Looking for WSAStartup
Looking for WSAStartup - found
Looking for UuidCreateSequential
Looking for UuidCreateSequential - found
Looking for GetAdaptersAddresses
Looking for GetAdaptersAddresses - found
Looking for fopen in ws2
Looking for fopen in ws2 - not found
Performing Test HAVE_FLAG_/W3
Performing Test HAVE_FLAG_/W3 - Success
Checking whether noexcept is supported
Performing Test ZMQ_HAVE_NOEXCEPT
Performing Test ZMQ_HAVE_NOEXCEPT - Success
Could NOT find AsciiDoc (missing: ASCIIDOC_EXECUTABLE) 
Configuring done

Second time:

Selecting Windows SDK version 10.0.16299.0 to target Windows 10.0.18363.
Detected ZMQ Version - 4.3.3
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
Build and install draft classes and methods
Using radix tree implementation to manage subscriptions
Enable WebSocket transport
Could NOT find GnuTLS (missing: GNUTLS_LIBRARY GNUTLS_INCLUDE_DIR) (Required is at least version "3.6.7")
CMake Warning at CMakeLists.txt:194 (message):
  No WSS support, you may want to install GnuTLS and run cmake again

Using builtin sha1
Could NOT find sodium (missing: SODIUM_LIBRARIES SODIUM_INCLUDE_DIRS) 
CMake Warning at CMakeLists.txt:259 (message):
  libsodium not installed, instead using builtin tweetnacl, you may want to
  install libsodium and run cmake again

Using tweetnacl for CURVE security
Detected _WIN32_WINNT from CMAKE_SYSTEM_VERSION: 0x0A00
Using polling method in I/O threads: epoll
Including wepoll
Using polling method in zmq_poll(er)_* API: poll
Using 64 bytes alignment for lock-free data structures
Using condition_variable_t implementation: stl11
Checking whether noexcept is supported
Could NOT find AsciiDoc (missing: ASCIIDOC_EXECUTABLE) 
Configuring done

CMakeOutput.log:

The system is: Windows - 10.0.18363 - AMD64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler:  
Build flags: 
Id flags:  

The output was:
0
Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

Der Buildvorgang wurde am 08.06.2020 12:00:02 gestartet.
Projekt "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\3.16.3\CompilerIdC\CompilerIdC.vcxproj" auf Knoten "1" (Standardziele).
PrepareForBuild:
  Das Verzeichnis "Debug\" wird erstellt.
  Das Verzeichnis "Debug\CompilerIdC.tlog\" wird erstellt.
InitializeBuildStatus:
  "Debug\CompilerIdC.tlog\unsuccessfulbuild" wird erstellt, da "AlwaysCreate" angegeben wurde.
ClCompile:
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\CL.exe /c /nologo /W0 /WX- /diagnostics:classic /Od /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\" /Fd"Debug\vc141.pdb" /Gd /TC /FC /errorReport:queue CMakeCCompilerId.c
  CMakeCCompilerId.c
Link:
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\link.exe /ERRORREPORT:QUEUE /OUT:".\CompilerIdC.exe" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\CompilerIdC.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\CompilerIdC.lib" /MACHINE:X64 Debug\CMakeCCompilerId.obj
  CompilerIdC.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\3.16.3\CompilerIdC\.\CompilerIdC.exe
PostBuildEvent:
  for %%i in (cl.exe) do @echo CMAKE_C_COMPILER=%%~$PATH:i
  :VCEnd
  CMAKE_C_COMPILER=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x64\cl.exe
FinalizeBuildStatus:
  Die Datei "Debug\CompilerIdC.tlog\unsuccessfulbuild" wird gel”scht.
  Aktualisieren des Timestamps von "Debug\CompilerIdC.tlog\CompilerIdC.lastbuildstate".
Die Erstellung von Projekt "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\3.16.3\CompilerIdC\CompilerIdC.vcxproj" ist abgeschlossen (Standardziele).

Der Buildvorgang wurde erfolgreich ausgefhrt.
    0 Warnung(en)
    0 Fehler

Verstrichene Zeit 00:00:00.93

Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.exe"

Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CompilerIdC.vcxproj"

The C compiler identification is MSVC, found in "C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/3.16.3/CompilerIdC/CompilerIdC.exe"

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler:  
Build flags: 
Id flags:  

The output was:
0
Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

Der Buildvorgang wurde am 08.06.2020 12:00:03 gestartet.
Projekt "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\3.16.3\CompilerIdCXX\CompilerIdCXX.vcxproj" auf Knoten "1" (Standardziele).
PrepareForBuild:
  Das Verzeichnis "Debug\" wird erstellt.
  Das Verzeichnis "Debug\CompilerIdCXX.tlog\" wird erstellt.
InitializeBuildStatus:
  "Debug\CompilerIdCXX.tlog\unsuccessfulbuild" wird erstellt, da "AlwaysCreate" angegeben wurde.
ClCompile:
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\CL.exe /c /nologo /W0 /WX- /diagnostics:classic /Od /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\" /Fd"Debug\vc141.pdb" /Gd /TP /FC /errorReport:queue CMakeCXXCompilerId.cpp
  CMakeCXXCompilerId.cpp
Link:
  C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX86\x64\link.exe /ERRORREPORT:QUEUE /OUT:".\CompilerIdCXX.exe" /INCREMENTAL:NO /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /PDB:".\CompilerIdCXX.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:".\CompilerIdCXX.lib" /MACHINE:X64 Debug\CMakeCXXCompilerId.obj
  CompilerIdCXX.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\3.16.3\CompilerIdCXX\.\CompilerIdCXX.exe
PostBuildEvent:
  for %%i in (cl.exe) do @echo CMAKE_CXX_COMPILER=%%~$PATH:i
  :VCEnd
  CMAKE_CXX_COMPILER=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx86\x64\cl.exe
FinalizeBuildStatus:
  Die Datei "Debug\CompilerIdCXX.tlog\unsuccessfulbuild" wird gel”scht.
  Aktualisieren des Timestamps von "Debug\CompilerIdCXX.tlog\CompilerIdCXX.lastbuildstate".
Die Erstellung von Projekt "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\3.16.3\CompilerIdCXX\CompilerIdCXX.vcxproj" ist abgeschlossen (Standardziele).

Der Buildvorgang wurde erfolgreich ausgefhrt.
    0 Warnung(en)
    0 Fehler

Verstrichene Zeit 00:00:00.78

Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.exe"

Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CompilerIdCXX.vcxproj"

The CXX compiler identification is MSVC, found in "C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/3.16.3/CompilerIdCXX/CompilerIdCXX.exe"

Determining if the C compiler works passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_3a56d.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_3a56d.dir\Debug\\" /Fd"cmTC_3a56d.dir\Debug\vc141.pdb" /Gd /TC /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\testCCompiler.c"

  testCCompiler.c

  cmTC_3a56d.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_3a56d.exe

Detecting C compiler ABI info compiled with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_67932.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_67932.dir\Debug\\" /Fd"cmTC_67932.dir\Debug\vc141.pdb" /Gd /TC /errorReport:queue "C:\Portable\CMake\share\cmake-3.16\Modules\CMakeCCompilerABI.c"

  CMakeCCompilerABI.c

  cmTC_67932.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_67932.exe

Determining if the CXX compiler works passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_c9c5c.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_c9c5c.dir\Debug\\" /Fd"cmTC_c9c5c.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\testCXXCompiler.cxx"

  testCXXCompiler.cxx

  cmTC_c9c5c.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_c9c5c.exe

Detecting CXX compiler ABI info compiled with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_8863e.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_8863e.dir\Debug\\" /Fd"cmTC_8863e.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Portable\CMake\share\cmake-3.16\Modules\CMakeCXXCompilerABI.cpp"

  CMakeCXXCompilerABI.cpp

  cmTC_8863e.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_8863e.exe

Determining if files windows.h exist passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_4aeb9.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_4aeb9.dir\Debug\\" /Fd"cmTC_4aeb9.dir\Debug\vc141.pdb" /Gd /TC /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CheckIncludeFiles\ZMQ_HAVE_WINDOWS.c"

  ZMQ_HAVE_WINDOWS.c

  cmTC_4aeb9.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_4aeb9.exe

Determining if files winsock2.h;afunix.h exist passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_4cfdb.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_4cfdb.dir\Debug\\" /Fd"cmTC_4cfdb.dir\Debug\vc141.pdb" /Gd /TC /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CheckIncludeFiles\ZMQ_HAVE_IPC.c"

  ZMQ_HAVE_IPC.c

  cmTC_4cfdb.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_4cfdb.exe

Determining if files condition_variable exist passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_d190f.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_d190f.dir\Debug\\" /Fd"cmTC_d190f.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CheckIncludeFiles\ZMQ_HAVE_STL_CONDITION_VARIABLE.cpp"

  ZMQ_HAVE_STL_CONDITION_VARIABLE.cpp

  cmTC_d190f.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_d190f.exe

Determining if the WSAStartup exist passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_be9d0.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_be9d0.dir\Debug\\" /Fd"cmTC_be9d0.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\CheckSymbolExists.cxx"

  CheckSymbolExists.cxx

  cmTC_be9d0.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_be9d0.exe

File C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:
/* */
#include <winsock2.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef WSAStartup
  return ((int*)(&WSAStartup))[argc];
#else
  (void)argc;
  return 0;
#endif
}
Determining if the UuidCreateSequential exist passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_51820.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_51820.dir\Debug\\" /Fd"cmTC_51820.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\CheckSymbolExists.cxx"

  CheckSymbolExists.cxx

  cmTC_51820.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_51820.exe

File C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:
/* */
#include <rpc.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef UuidCreateSequential
  return ((int*)(&UuidCreateSequential))[argc];
#else
  (void)argc;
  return 0;
#endif
}
Determining if the GetAdaptersAddresses exist passed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_427fb.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_427fb.dir\Debug\\" /Fd"cmTC_427fb.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\CheckSymbolExists.cxx"

  CheckSymbolExists.cxx

  cmTC_427fb.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_427fb.exe

File C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp/CheckSymbolExists.cxx:
/* */
#include <winsock2.h>
#include <iphlpapi.h>

int main(int argc, char** argv)
{
  (void)argv;
#ifndef GetAdaptersAddresses
  return ((int*)(&GetAdaptersAddresses))[argc];
#else
  (void)argc;
  return 0;
#endif
}
Performing C++ SOURCE FILE Test HAVE_FLAG_/W3 succeeded with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_e4857.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D HAVE_FLAG_/W3 /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_e4857.dir\Debug\\" /Fd"cmTC_e4857.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\src.cxx"

  src.cxx

  cmTC_e4857.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_e4857.exe

Source file was:
int main() { return 0; }
Performing C++ SOURCE FILE Test ZMQ_HAVE_NOEXCEPT succeeded with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_ae99f.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D ZMQ_HAVE_NOEXCEPT /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_ae99f.dir\Debug\\" /Fd"cmTC_ae99f.dir\Debug\vc141.pdb" /Gd /TP /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\src.cxx"

  src.cxx

  cmTC_ae99f.vcxproj -> C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\Debug\cmTC_ae99f.exe

Source file was:

struct X 
{
    X(int i) noexcept {}
};

int main(int argc, char *argv [])
{
    X x(5);
    return 0;
}

CMakeError.log:

Determining if the include file pthread.h exists failed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_28f50.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_28f50.dir\Debug\\" /Fd"cmTC_28f50.dir\Debug\vc141.pdb" /Gd /TC /errorReport:queue "C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\CheckIncludeFile.c"

  CheckIncludeFile.c

C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\CheckIncludeFile.c(1): fatal error C1083: Datei (Include) kann nicht ge”ffnet werden: "pthread.h": No such file or directory [C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\cmTC_28f50.vcxproj]

Determining if the function fopen exists in the ws2 failed with the following output:
Change Dir: C:/Users/USERNAME/Arbeit/libzmq/build/CMakeFiles/CMakeTmp

Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/MSBuild/15.0/Bin/MSBuild.exe cmTC_548e7.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=15.0 /v:m && Microsoft (R)-Build-Engine, Version 15.9.21+g9802d43bc3 fr .NET Framework

Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  Microsoft (R) C/C++-Optimierungscompiler Version 19.16.27040 fr x64

  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

  cl /c /Zi /W3 /WX- /diagnostics:classic /Od /Ob0 /D WIN32 /D _WINDOWS /D CHECK_FUNCTION_EXISTS=fopen /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_548e7.dir\Debug\\" /Fd"cmTC_548e7.dir\Debug\vc141.pdb" /Gd /TC /errorReport:queue "C:\Portable\CMake\share\cmake-3.16\Modules\CheckFunctionExists.c"

  CheckFunctionExists.c

LINK : fatal error LNK1104: Datei "ws2.lib" kann nicht geöffnet werden. [C:\Users\USERNAME\Arbeit\libzmq\build\CMakeFiles\CMakeTmp\cmTC_548e7.vcxproj]
ghost commented 4 years ago

sockaddr_un was introduced in build 17061, so this issue may likely be since you are building with SDK version 16299. Oddly enough, however, your stdout log contains the lines

...
Looking for include files winsock2.h, afunix.h
Looking for include files winsock2.h, afunix.h - found
...

I would think that CMakeFiles/**/ZMQ_HAVE_IPC.c would fail to compile if it contained #include <afunix.h>, since I cannot find afunix.h in the include directory for SDK 16299 (as expected). Perhaps this is an upstream issue with CMake?

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had activity for 365 days. It will be closed if no further activity occurs within 56 days. Thank you for your contributions.