Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows build fails for CPython 3.13 #56

Open
Martin19037 opened this issue Nov 28, 2024 · 0 comments · May be fixed by #57
Open

Windows build fails for CPython 3.13 #56

Martin19037 opened this issue Nov 28, 2024 · 0 comments · May be fixed by #57

Comments

@Martin19037
Copy link

ncls 0.0.68 fails to build for CPython 3.13 on windows (x64). It does work for ubuntu 20.04 though.
Using CPython 3.12 the build also works, and for CPython 3.11 there are prebuilt wheels that work anyway.

Here is the installation log:

> pip install ncls

Collecting ncls
  Downloading ncls-0.0.68.tar.gz (483 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting numpy (from ncls)
  Downloading numpy-2.1.3-cp313-cp313-win_amd64.whl.metadata (60 kB)
Downloading numpy-2.1.3-cp313-cp313-win_amd64.whl (12.6 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.6/12.6 MB 35.3 MB/s eta 0:00:00
Building wheels for collected packages: ncls
  Building wheel for ncls (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for ncls (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [118 lines of output]
      ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any
      C:\Users\developer\AppData\Local\Temp\pip-build-env-557hcp4b\overlay\Lib\site-packages\setuptools\command\build_py.py:212: _Warning: Package 'ncls.src' is absent from the `packages` configuration.
      !!

              ********************************************************************************
              ############################
              # Package would be ignored #
              ############################
              Python recognizes 'ncls.src' as an importable package[^1],
              but it is absent from setuptools' `packages` configuration.

              This leads to an ambiguous overall configuration. If you want to distribute this
              package, please make sure that 'ncls.src' is explicitly added
              to the `packages` configuration field.

              Alternatively, you can also rely on setuptools' discovery methods
              (for example by using `find_namespace_packages(...)`/`find_namespace:`
              instead of `find_packages(...)`/`find:`).

              You can read more about "package discovery" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

              If you don't want 'ncls.src' to be distributed and are
              already explicitly excluding 'ncls.src' via
              `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
              you can try to use `exclude_package_data`, or `include-package-data=False` in
              combination with a more fine grained `package-data` configuration.

              You can read more about "package data files" on setuptools documentation page:

              - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


              [^1]: For Python, any directory (with suitable naming) can be imported,
                    even if it does not contain any `.py` files.
                    On the other hand, currently there is no concept of package data
                    directory, all directories are treated like packages.
              ********************************************************************************

      !!
        check.warn(importable)
      intervaldb.c
      ncls/src/intervaldb.c(151): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(169): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(201): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(134): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(138): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(247): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(260): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(278): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(280): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(282): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(258): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(276): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(305): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(318): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(327): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(390): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(419): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(454): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(463): warning C4244: 'function': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(465): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(480): warning C4244: 'function': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(480): warning C4244: 'function': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(483): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(439): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(464): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(523): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(602): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(587): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(645): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(620): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(647): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(707): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(708): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(782): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(785): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(786): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(788): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(791): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(792): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(794): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(812): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(813): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(815): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(824): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(825): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(827): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(848): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(849): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(852): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(855): warning C4996: 'fscanf': This function or variable may be unsafe. Consider using fscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(858): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(860): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(861): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(864): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(871): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(873): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(874): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(877): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(881): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(902): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(903): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(906): warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      ncls/src/intervaldb.c(1220): error C2065: 'clock_t': undeclared identifier
      ncls/src/intervaldb.c(1220): error C2146: syntax error: missing ';' before identifier 't'
      ncls/src/intervaldb.c(1220): error C2065: 't': undeclared identifier
      ncls/src/intervaldb.c(1221): error C2065: 't': undeclared identifier
      ncls/src/intervaldb.c(1221): warning C4013: 'clock' undefined; assuming extern returning int
      ncls/src/intervaldb.c(1222): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(1223): error C2065: 't': undeclared identifier
      ncls/src/intervaldb.c(1223): error C2065: 't': undeclared identifier
      ncls/src/intervaldb.c(1224): error C2065: 't': undeclared identifier
      ncls/src/intervaldb.c(1224): error C2065: 'CLOCKS_PER_SEC': undeclared identifier
      ncls/src/intervaldb.c(1245): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      ncls/src/intervaldb.c(1248): warning C4244: '=': conversion from 'int64_t' to 'int', possible loss of data
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.42.34433\\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 ncls
Failed to build ncls
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (ncls)
@aroningruber aroningruber linked a pull request Nov 28, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant