nix-rust / nix

Rust friendly bindings to *nix APIs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nix-0.15.0 on risv64 on target board

kush930 opened this issue · comments

Hi all,
I have cloned nix-v0.15.0 from link:- https://github.com/nix-rust/nix.git

I want to build nix v0.15.0 on riscv64 on target board, and running command

$ cargo build

During building time, i am facing issue:-

root@kush-Linux-1:~/nix# cargo build


   Compiling nix v0.15.0 (/home/root/nix)
error: 8th rule of macro `libc_enum` is never used
   --> src/macros.rs:204:5
    |
204 | /     (@accumulate_entries
205 | |         $prefix:tt,
206 | |         [$($entries:tt)*];
207 | |         $entry:ident as $ty:ty, $($tail:tt)*
208 | |     ) => {
    | |_____^
    |
note: the lint level is defined here
   --> src/lib.rs:13:9
    |
13  | #![deny(unused)]
    |         ^^^^^^
    = note: `#[deny(unused_macro_rules)]` implied by `#[deny(unused)]`

error: 5th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:150:5
    |
150 |     ($(#[$attr:meta])* $name:ident, SetOnly, $level:expr, $flag:path, u8) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 2nd rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:135:5
    |
135 |     ($(#[$attr:meta])* $name:ident, GetOnly, $level:expr, $flag:path, u8) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 3rd rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:139:5
    |
139 |     ($(#[$attr:meta])* $name:ident, GetOnly, $level:expr, $flag:path, usize) =>
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 9th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:170:5
    |
170 |     ($(#[$attr:meta])* $name:ident, Both, $level:expr, $flag:path, usize) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 6th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:154:5
    |
154 |     ($(#[$attr:meta])* $name:ident, SetOnly, $level:expr, $flag:path, usize) =>
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 7th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:160:5
    |
160 |     ($(#[$attr:meta])* $name:ident, Both, $level:expr, $flag:path, bool) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 4th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:145:5
    |
145 |     ($(#[$attr:meta])* $name:ident, SetOnly, $level:expr, $flag:path, bool) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 10th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:175:5
    |
175 | /     ($(#[$attr:meta])* $name:ident, Both, $level:expr, $flag:path,
176 | |      OsString<$array:ty>) =>
    | |_________________________^

error: 8th rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:165:5
    |
165 |     ($(#[$attr:meta])* $name:ident, Both, $level:expr, $flag:path, u8) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: 1st rule of macro `sockopt_impl` is never used
   --> src/sys/socket/sockopt.rs:130:5
    |
130 |     ($(#[$attr:meta])* $name:ident, GetOnly, $level:expr, $flag:path, bool) => {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0107]: struct takes 0 generic arguments but 1 generic argument was supplied
   --> src/sys/socket/sockopt.rs:289:77
    |
289 | sockopt_impl!(Both, TcpCongestion, libc::IPPROTO_TCP, libc::TCP_CONGESTION, OsString<[u8; TCP_CA_NAME_MAX]>);
    |                                                                             ^^^^^^^^----------------------- help: remove these generics
    |                                                                             |
    |                                                                             expected 0 generic arguments

For more information about this error, try `rustc --explain E0107`.
error: could not compile `nix` (lib) due to 12 previous errors

Can anyone help me to build nix-v0.15.0 on riscv64 target board, exact I am not getting where its failing.

T&R
lavkhush

This is a duplicate of #2066 . Nix 0.15.0 didn't run on riscv. You need to update to a newer version. Or if you really really really need exactly 0.15.0 for some reason, you'll have your work cut out for you.