Skip to content

__error() not provided for x86_64-unknown-dragonfly #1627

@tuxillo

Description

@tuxillo
  • Target: x86_64-unknown-dragonfly (not in the CI)
  • Instructions to reproduce: just try to build in this platform

After commit 3fa021d, libc won't provide __error() for DragonFly. We've spotted this by trying to build rust-1.39, which includes a newer libc crate (0.2.62) that contains this change.

The error shows up when the build tries to make use of libc::__error():

error[E0432]: unresolved import `libc::__error`
  --> /usr/obj/dports/lang/rust.139/rustc-1.39.0-src/vendor/getrandom/src/util_libc.rs:22:13
   |
22 |         use libc::__error as errno_location;
   |             ^^^^^^-------^^^^^^^^^^^^^^^^^^
   |             |     |
   |             |     help: a similar name exists in the module: `ferror`
   |             no `__error` in the root

error: aborting due to previous error

For more information about this error, try `rustc --explain E0432`.
error: Could not compile `getrandom`.
warning: build failed, waiting for other jobs to finish...
error: build failed
command did not execute successfully: "/usr/obj/dports/lang/rust.139/rustc-1.39.0-src/build/x86_64-unknown-dragonfly/stage0/bin/cargo" "build" "-Zconfig-profile" "--target" "x86_64-unknown-dragonfly" "-Zbinary-de
p-depinfo" "-j" "24" "--release" "--frozen" "--features" "" "--manifest-path" "/usr/obj/dports/lang/rust.139/rustc-1.39.0-src/src/rustc/Cargo.toml" "--message-format" "json-render-diagnostics"
expected success, got: exit code: 101
Traceback (most recent call last):
  File "/usr/obj/dports/lang/rust.139/rustc-1.39.0-src/x.py", line 11, in <module>
    bootstrap.main()
  File "/usr/obj/dports/lang/rust.139/rustc-1.39.0-src/src/bootstrap/bootstrap.py", line 913, in main
    bootstrap(help_triggered)
  File "/usr/obj/dports/lang/rust.139/rustc-1.39.0-src/src/bootstrap/bootstrap.py", line 899, in bootstrap
    run(args, env=env, verbose=build.verbose)
  File "/usr/obj/dports/lang/rust.139/rustc-1.39.0-src/src/bootstrap/bootstrap.py", line 141, in run
    raise RuntimeError(err)
RuntimeError: failed to run: /usr/obj/dports/lang/rust.139/rustc-1.39.0-src/build/bootstrap/debug/bootstrap build --verbose --config ./config.toml --jobs 24
*** Error code 1

Stop.
make[1]: stopped in /usr/dports/lang/rust.139
*** Error code 1

Stop.

Let me know if you need additional information and I'll provide it.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions