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

DragonFlyBSD build issue #974

Closed
levex opened this issue Nov 17, 2018 · 4 comments
Closed

DragonFlyBSD build issue #974

levex opened this issue Nov 17, 2018 · 4 comments

Comments

@levex
Copy link
Contributor

levex commented Nov 17, 2018

Hi!

Building on DragonflyBSD fails:

lkurusa@ultra ~/d/nix> uname -r
5.3-DEVELOPMENT
lkurusa@ultra ~/d/nix> git show-ref HEAD
3f9548a88833701559f13eeb10df59dd49643ffd refs/remotes/origin/HEAD
lkurusa@ultra ~/d/nix> cargo clean
lkurusa@ultra ~/d/nix> git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
lkurusa@ultra ~/d/nix> cargo build
   Compiling cc v1.0.25
   Compiling libc v0.2.43 (https://github.com/rust-lang/libc#4e5ef222)
   Compiling cfg-if v0.1.6
   Compiling bitflags v1.0.4
   Compiling void v1.0.2
   Compiling nix v0.11.0 (file:///home/lkurusa/dev/nix)
error[E0658]: access to extern crates through prelude is experimental (see issue #44660)
   --> src/errno.rs:106:29
    |
106 | impl ErrnoSentinel for *mut libc::c_void {
    |                             ^^^^

error[E0658]: access to extern crates through prelude is experimental (see issue #44660)
   --> src/errno.rs:107:51
    |
107 |     fn sentinel() -> Self { (-1 as isize) as *mut libc::c_void }
    |                                                   ^^^^

error[E0425]: cannot find value `ENOMEDIUM` in module `libc`
    --> src/errno.rs:1375:33
     |
1375 |         ENOMEDIUM       = libc::ENOMEDIUM,
     |                                 ^^^^^^^^^ did you mean `ENOMEM`?
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::ENOMEDIUM;
     |

error[E0425]: cannot find value `EUNUSED94` in module `libc`
    --> src/errno.rs:1376:33
     |
1376 |         EUNUSED94       = libc::EUNUSED94,
     |                                 ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED94;
     |

error[E0425]: cannot find value `EUNUSED95` in module `libc`
    --> src/errno.rs:1377:33
     |
1377 |         EUNUSED95       = libc::EUNUSED95,
     |                                 ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED95;
     |

error[E0425]: cannot find value `EUNUSED96` in module `libc`
    --> src/errno.rs:1378:33
     |
1378 |         EUNUSED96       = libc::EUNUSED96,
     |                                 ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED96;
     |

error[E0425]: cannot find value `EUNUSED97` in module `libc`
    --> src/errno.rs:1379:33
     |
1379 |         EUNUSED97       = libc::EUNUSED97,
     |                                 ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED97;
     |

error[E0425]: cannot find value `EUNUSED98` in module `libc`
    --> src/errno.rs:1380:33
     |
1380 |         EUNUSED98       = libc::EUNUSED98,
     |                                 ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED98;
     |

error[E0425]: cannot find value `EASYNC` in module `libc`
    --> src/errno.rs:1381:33
     |
1381 |         EASYNC          = libc::EASYNC,
     |                                 ^^^^^^ did you mean `O_ASYNC`?
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EASYNC;
     |

error[E0531]: cannot find unit struct/variant or constant `ENOMEDIUM` in module `libc`
    --> src/errno.rs:1487:19
     |
1487 |             libc::ENOMEDIUM => ENOMEDIUM,
     |                   ^^^^^^^^^ did you mean `ENOMEM`?
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::ENOMEDIUM;
     |

error[E0531]: cannot find unit struct/variant or constant `EUNUSED94` in module `libc`
    --> src/errno.rs:1488:19
     |
1488 |             libc::EUNUSED94 => EUNUSED94,
     |                   ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED94;
     |

error[E0531]: cannot find unit struct/variant or constant `EUNUSED95` in module `libc`
    --> src/errno.rs:1489:19
     |
1489 |             libc::EUNUSED95 => EUNUSED95,
     |                   ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED95;
     |

error[E0531]: cannot find unit struct/variant or constant `EUNUSED96` in module `libc`
    --> src/errno.rs:1490:19
     |
1490 |             libc::EUNUSED96 => EUNUSED96,
     |                   ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED96;
     |

error[E0531]: cannot find unit struct/variant or constant `EUNUSED97` in module `libc`
    --> src/errno.rs:1491:19
     |
1491 |             libc::EUNUSED97 => EUNUSED97,
     |                   ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED97;
     |

error[E0531]: cannot find unit struct/variant or constant `EUNUSED98` in module `libc`
    --> src/errno.rs:1492:19
     |
1492 |             libc::EUNUSED98 => EUNUSED98,
     |                   ^^^^^^^^^ not found in `libc`
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EUNUSED98;
     |

error[E0531]: cannot find unit struct/variant or constant `EASYNC` in module `libc`
    --> src/errno.rs:1493:19
     |
1493 |             libc::EASYNC => EASYNC,
     |                   ^^^^^^ did you mean `O_ASYNC`?
help: possible candidate is found in another module, you can import it into scope
     |
1277 |     use errno::consts::Errno::EASYNC;
     |

error: aborting due to 16 previous errors

Some errors occurred: E0425, E0531, E0658.
For more information about an error, try `rustc --explain E0425`.
error: Could not compile `nix`.

To learn more, run the command again with --verbose.
lkurusa@ultra ~/d/nix> rustc -vV
rustc 1.29.2
binary: rustc
commit-hash: unknown
commit-date: unknown
host: x86_64-unknown-dragonfly
release: 1.29.2
LLVM version: 7.0

I'll debug later this weekend, but thought I'd open the issue in case someone has a quick fix.

@asomers
Copy link
Member

asomers commented Nov 17, 2018

None of Nix's regular maintainers use Dragonfly, nor do we have CI setup for it. So this kind of breakage is to be expected.

@levex
Copy link
Contributor Author

levex commented Nov 18, 2018

I will have a look and fix this - getting nix to work on Dragonfly is a priority for me right now, so maybe later I can step up as an aide for the dfly part of nix.

@levex
Copy link
Contributor Author

levex commented Nov 23, 2018

libc PR to add back the missing errnos: rust-lang/libc#1145

@levex
Copy link
Contributor Author

levex commented Dec 8, 2018

This has been fixed by #989 !

@levex levex closed this as completed Dec 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants