msgpack / msgpack-python

MessagePack serializer implementation for Python msgpack.org[Python]
https://msgpack.org/
Other
1.93k stars 230 forks source link

Build failure with MSVC v17.10.0-pre.4.0 and Python 3.13 #597

Closed clin1234 closed 6 months ago

clin1234 commented 6 months ago

I'm not sure where compiler flags are set here, but for MSVC, the /std:c++20 must be included, even though the codebase is in C, for it to recognize designated initializers. This error was encountered while building wheels for a different projects that ultimately depends on msgpack

  Building wheel for msgpack (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for msgpack (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [34 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build\lib.win-amd64-cpython-313
      creating build\lib.win-amd64-cpython-313\msgpack
      copying msgpack\exceptions.py -> build\lib.win-amd64-cpython-313\msgpack
      copying msgpack\ext.py -> build\lib.win-amd64-cpython-313\msgpack
      copying msgpack\fallback.py -> build\lib.win-amd64-cpython-313\msgpack
      copying msgpack\__init__.py -> build\lib.win-amd64-cpython-313\msgpack
      running build_ext
      building 'msgpack._cmsgpack' extension
      creating build\temp.win-amd64-cpython-313
      creating build\temp.win-amd64-cpython-313\Release
      creating build\temp.win-amd64-cpython-313\Release\msgpack
      "C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -D__LITTLE_ENDIAN__=1 -I. -IC:\Users\ךינשגכהד\scoop\apps\python-alpha\current\include -IC:\Users\ךינשגכהד\scoop\apps\python-alpha\current\Include "-IC:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.40.33807\ATLMFC\include" "-IC:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt" /EHsc /Tpmsgpack/_cmsgpack.cpp /Fobuild\temp.win-amd64-cpython-313\Release\msgpack/_cmsgpack.obj
      _cmsgpack.cpp
      C:\Users\ךינשגכהד\AppData\Local\Temp\pip-install-znao50wp\msgpack_0ec228bd0b94472ab5d6ae611e9a56c2\msgpack\pack_template.h(752): warning C4267: '=': conversion from 'size_t' to 'unsigned char', possible loss of data
      C:\Users\ךינשגכהד\AppData\Local\Temp\pip-install-znao50wp\msgpack_0ec228bd0b94472ab5d6ae611e9a56c2\msgpack\unpack.h(352): warning C4244: 'argument': conversion from 'int64_t' to 'int', possible loss of data
      msgpack/_cmsgpack.cpp(1366): warning C4996: 'Py_UNICODE': deprecated in 3.13
      msgpack/_cmsgpack.cpp(1368): warning C4996: 'Py_UNICODE': deprecated in 3.13
      msgpack/_cmsgpack.cpp(8155): warning C4244: 'argument': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
      msgpack/_cmsgpack.cpp(8332): warning C4244: 'argument': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
      msgpack/_cmsgpack.cpp(8542): warning C4244: 'argument': conversion from 'long' to 'char', possible loss of data
      msgpack/_cmsgpack.cpp(8692): warning C4244: 'argument': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
      msgpack/_cmsgpack.cpp(9998): warning C4244: 'argument': conversion from '__int64' to 'unsigned int', possible loss of data
      msgpack/_cmsgpack.cpp(10283): warning C4244: 'argument': conversion from '__int64' to 'unsigned int', possible loss of data
      msgpack/_cmsgpack.cpp(10550): warning C4244: 'argument': conversion from 'Py_ssize_t' to 'unsigned int', possible loss of data
      msgpack/_cmsgpack.cpp(20622): warning C4551: function call missing argument list
      C:\Users\ךינשגכהד\scoop\apps\python-alpha\current\include\internal\pycore_backoff.h(47): error C7555: use of designated initializers requires at least '/std:c++20'
      C:\Users\ךינשגכהד\scoop\apps\python-alpha\current\include\internal\pycore_backoff.h(47): error C4576: a parenthesized type followed by an initializer list is a non-standard explicit type conversion syntax
      C:\Users\ךינשגכהד\scoop\apps\python-alpha\current\include\internal\pycore_backoff.h(53): error C7555: use of designated initializers requires at least '/std:c++20'
      C:\Users\ךינשגכהד\scoop\apps\python-alpha\current\include\internal\pycore_backoff.h(53): error C4576: a parenthesized type followed by an initializer list is a non-standard explicit type conversion syntax
      error: command 'C:\\Program Files\\Microsoft Visual Studio\\2022\\Preview\\VC\\Tools\\MSVC\\14.40.33807\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for msgpack
Successfully built poetry dulwich
Failed to build msgpack
ERROR: Could not build wheels for msgpack, which is required to install pyproject.toml-based projects