Skip to content

Breaks on FreeBSD: No platform declared for host OS freebsd on arch amd64 #2734

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

Open
yurivict opened this issue Apr 3, 2025 · 4 comments
Open
Labels

Comments

@yurivict
Copy link

yurivict commented Apr 3, 2025

Project that uses python3_9 on FreeBSD fails:

DEBUG: /usr/ports/devel/py-ray/work-py311/ray-ray-2.44.1/bazel/ray_deps_setup.bzl:67:14: No implicit mirrors used for com_github_spdlog because urls were explicitly provided
DEBUG: /usr/ports/devel/py-ray/work-py311/ray-ray-2.44.1/bazel/ray_deps_setup.bzl:67:14: No implicit mirrors used for com_google_absl because urls were explicitly provided
INFO: Repository python3_9 instantiated at:
  /usr/ports/devel/py-ray/work-py311/ray-ray-2.44.1/WORKSPACE:49:27: in <toplevel>
  /usr/home/yuri/.cache/bazel/_bazel_yuri/5254ee5028c0cce1d3a4d6ebf8932e6e/external/rules_python/python/repositories.bzl:296:34: in python_register_toolchains
Repository rule resolved_interpreter_os_alias defined at:
  /usr/home/yuri/.cache/bazel/_bazel_yuri/5254ee5028c0cce1d3a4d6ebf8932e6e/external/rules_python/python/private/toolchains_repo.bzl:123:48: in <toplevel>
ERROR: An error occurred during the fetch of repository 'python3_9':
   Traceback (most recent call last):
        File "/usr/home/yuri/.cache/bazel/_bazel_yuri/5254ee5028c0cce1d3a4d6ebf8932e6e/external/rules_python/python/private/toolchains_repo.bzl", line 81, column 13, in _resolved_interpreter_os_alias_impl
                fail("No platform declared for host OS {} on arch {}".format(os_name, arch))
Error in fail: No platform declared for host OS freebsd on arch amd64
ERROR: /usr/ports/devel/py-ray/work-py311/ray-ray-2.44.1/WORKSPACE:49:27: fetching resolved_interpreter_os_alias rule //external:python3_9: Traceback (most recent call last):
        File "/usr/home/yuri/.cache/bazel/_bazel_yuri/5254ee5028c0cce1d3a4d6ebf8932e6e/external/rules_python/python/private/toolchains_repo.bzl", line 81, column 13, in _resolved_interpreter_os_alias_impl
                fail("No platform declared for host OS {} on arch {}".format(os_name, arch))
Error in fail: No platform declared for host OS freebsd on arch amd64
ERROR: Error computing the main repository mapping: no such package '@python3_9//': No platform declared for host OS freebsd on arch amd64
Loading: 
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
    main()
  File "/usr/local/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in main
    json_out["return_val"] = hook(**hook_input["kwargs"])
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py", line 280, in build_wheel
    return _build_backend().build_wheel(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/setuptools/build_meta.py", line 244, in build_wheel
    return self._build_with_temp_dir(['bdist_wheel'], '.whl',
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/setuptools/build_meta.py", line 229, in _build_with_temp_dir
    self.run_setup()
  File "/usr/local/lib/python3.11/site-packages/setuptools/build_meta.py", line 282, in run_setup
    self).run_setup(setup_script=setup_script)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/setuptools/build_meta.py", line 174, in run_setup
    exec(compile(code, __file__, 'exec'), locals())
  File "setup.py", line 807, in <module>
    setuptools.setup(
  File "/usr/local/lib/python3.11/site-packages/setuptools/__init__.py", line 87, in setup
    return distutils.core.setup(**attrs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 177, in setup
    return run_commands(dist)
           ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/core.py", line 193, in run_commands
    dist.run_commands()
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 968, in run_commands
    self.run_command(cmd)
  File "/usr/local/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command
    super().run_command(command)
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
    cmd_obj.run()
  File "/usr/local/lib/python3.11/site-packages/wheel/_bdist_wheel.py", line 387, in run
    self.run_command("build")
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 317, in run_command
    self.distribution.run_command(command)
  File "/usr/local/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command
    super().run_command(command)
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
    cmd_obj.run()
  File "/usr/local/lib/python3.11/site-packages/setuptools/command/build.py", line 24, in run
    super().run()
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/command/build.py", line 131, in run
    self.run_command(cmd_name)
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/cmd.py", line 317, in run_command
    self.distribution.run_command(command)
  File "/usr/local/lib/python3.11/site-packages/setuptools/dist.py", line 1217, in run_command
    super().run_command(command)
  File "/usr/local/lib/python3.11/site-packages/setuptools/_distutils/dist.py", line 987, in run_command
    cmd_obj.run()
  File "setup.py", line 795, in run
    return pip_run(self)
           ^^^^^^^^^^^^^
  File "setup.py", line 704, in pip_run
    build(True, BUILD_JAVA, True)
  File "setup.py", line 660, in build
    return bazel_invoke(
           ^^^^^^^^^^^^^
  File "setup.py", line 431, in bazel_invoke
    result = invoker([cmd] + cmdline, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/subprocess.py", line 413, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['bazel', 'build', '--verbose_failures', '--incompatible_strict_action_env', '--', '//:ray_pkg', '//cpp:ray_cpp_pkg']' returned non-zero exit status 1.

ERROR Backend subprocess exited when trying to invoke build_wheel
*** Error code 1

Version: 1.3.0
FreeBSD 14.2
Project is: https://github.com/ray-project/ray

@aignas aignas added the P4 label Apr 4, 2025
@aignas
Copy link
Collaborator

aignas commented Apr 4, 2025

FreeBSD is not a Tier1 supported platform (see #2722), however, feel free to create a PR that adds FreeBSD to the list of known platforms in the pypi integration code. Search for existing dictionaries that have "linux", etc in them.

@aignas aignas added type: feature request type: pip pip/pypi integration labels Apr 4, 2025
@yurivict
Copy link
Author

yurivict commented Apr 4, 2025

Does it have to depend on downloaded wheels?
Can it depend on pre-installed python packages?
We already have functioning python packages and they should be used for all purposes.

@aignas
Copy link
Collaborator

aignas commented Apr 5, 2025

Bazel usually provides a hermetic setup that builds the packages from scratch or fetches the wheels. If you want to use pre-installed packages, you have to configure the toolchain on your own. I think our docs have an example how to use system python.

@rickeylev
Copy link
Collaborator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants