!FBuJyWXTGcGtHTPphC:nixos.org

Nix Rust

682 Members
Rust154 Servers

Load older messages


SenderMessageTime
18 Jan 2022
@rajivr:matrix.orgrajivr joined the room.03:36:00
20 Jan 2022
@andi:kack.itandi- left the room.00:12:37
22 Jan 2022
@bernardo:matrix.parity.iobernardo

NixOS beginner here. I need to build a Rust crate (https://github.com/paritytech/substrate-contracts-node) that depends on Clang.

I keep running into:


I've tried adding some packages to Home Manager (libclang, llvmPackages.libclang, clang), without success.

I also did a brief google search but I'm quite confused about how to go about this.

20:08:04
@bernardo:matrix.parity.iobernardo *

NixOS beginner here. I need to build a Rust crate (https://github.com/paritytech/substrate-contracts-node) that depends on Clang.

I keep running into:

thread 'main' panicked at 'Unable to find libclang: "couldn't find any valid shared libraries matching: ['libclang.so', 'libclang-*.so', 'libclang.so.*', 'libclang-*.so.*'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found (invalid: [])"', /home/bear/.cargo/registry/src/github.com-1ecc6299db9ec823/bindgen-0.59.2/src/lib.rs:2144:31

I've tried adding some packages to Home Manager (libclang, llvmPackages.libclang, clang), without success.

I also did a brief google search but I'm quite confused about how to go about this.

20:08:26
@mikroskeem:d0.eeMark LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib"; 20:12:17
@bernardo:matrix.parity.iobernardo
In reply to @mikroskeem:d0.ee
LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
I saw this suggestion during my Google search, but I couldn't figure out which file to add this line to. I tried adding it to the same file where my Home Manager definitions are with no success.
20:13:59
@zhaofeng:zhaofeng.liZhaofeng Li
In reply to @bernardo:matrix.parity.io
I saw this suggestion during my Google search, but I couldn't figure out which file to add this line to. I tried adding it to the same file where my Home Manager definitions are with no success.
It's best to have a separate shell environment for each project, and you can add this in your mkShell
20:15:26
@mikroskeem:d0.eeMark^20:16:10
@bernardo:matrix.parity.iobernardo hmm ok so I should write a shell.nix file for this specific project? 20:16:21
@mikroskeem:d0.eeMarkyes, or flake.nix preferably20:16:31
@mikroskeem:d0.eeMark & echo use flake > .envrc 20:16:41
@bernardo:matrix.parity.iobernardogotcha... thanks guys!20:17:04
@mikroskeem:d0.eeMarkhttps://github.com/ZentriaMC/neard-nix/blob/master/default.nix20:17:15
@mikroskeem:d0.eeMarkand of course flake.nix there20:20:51
23 Jan 2022
@bernardo:matrix.parity.iobernardo

I'm using this shell.nix: https://github.com/paritytech/substrate/blob/master/shell.nix

applied at the root of this project: https://github.com/paritytech/substrate-contracts-node

I executed $ nix-shell then $ cargo build --release

and now I'm running into:

error[E0658]: use of unstable library feature 'proc_macro_is_available'

I'm guessing there's something missing on the shell.nix file?

01:31:47
@zhaofeng:zhaofeng.liZhaofeng Li What does rustc --version show? 01:33:19
@bernardo:matrix.parity.iobernardo
In reply to @zhaofeng:zhaofeng.li
What does rustc --version show?
rustc 1.57.0-nightly (497ee321a 2021-09-09)
01:33:38
@bernardo:matrix.parity.iobernardo
In reply to @zhaofeng:zhaofeng.li
What does rustc --version show?
* rustc 1.57.0-nightly (497ee321a 2021-09-09)
01:34:27
@zhaofeng:zhaofeng.liZhaofeng LiHmm, that feature should exist in that version of nightly (it was removed a month later, which should cause it to complain that the feature is non-existent). Where is that in the code?01:36:15
@bernardo:matrix.parity.iobernardo
In reply to @zhaofeng:zhaofeng.li
Hmm, that feature should exist in that version of nightly (it was removed a month later, which should cause it to complain that the feature is non-existent). Where is that in the code?
error[E0658]: use of unstable library feature 'proc_macro_is_available'
  --> /home/bear/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.36/src/detection.rs:28:21
   |
28 |     let available = proc_macro::is_available();
   |                     ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: see issue #71436 <https://github.com/rust-lang/rust/issues/71436> for more information
   = help: add `#![feature(proc_macro_is_available)]` to the crate attributes to enable
01:37:15
@zhaofeng:zhaofeng.liZhaofeng LiOk, try a newer nightly version where this has already stabilized01:39:16
@bernardo:matrix.parity.iobernardo
In reply to @zhaofeng:zhaofeng.li
Ok, try a newer nightly version where this has already stabilized
switched the date to 2021-12-30 and it worked! thanks!!
02:20:16
@bernardo:matrix.parity.iobernardo

now I'm trying to build https://github.com/paritytech/canvas with the same shell.nix mentioned before..
running into this:

...
  = note: /nix/store/rbqplhv2s539liymkvm3zbjj9lvgzpd5-binutils-2.35.2/bin/ld: final link failed: No space left on device
          collect2: error: ld returned 1 exit status


LLVM ERROR: IO failure on output stream: No space left on device
The following warnings were emitted during compilation:

pretty confusing, since I do have plenty of space on my disk 🤔

14:38:43
@mikroskeem:d0.eeMark
In reply to @bernardo:matrix.parity.io

now I'm trying to build https://github.com/paritytech/canvas with the same shell.nix mentioned before..
running into this:

...
  = note: /nix/store/rbqplhv2s539liymkvm3zbjj9lvgzpd5-binutils-2.35.2/bin/ld: final link failed: No space left on device
          collect2: error: ld returned 1 exit status


LLVM ERROR: IO failure on output stream: No space left on device
The following warnings were emitted during compilation:

pretty confusing, since I do have plenty of space on my disk 🤔

/tmp mounted as tmpfs?
14:53:41
@mikroskeem:d0.eeMarkincrease its size14:53:50
@bernardo:matrix.parity.iobernardo
In reply to @mikroskeem:d0.ee
increase its size
I did $ sudo mount -o remount,size=30G /tmp, which is confirmed by df -h... but the problem remains :(
15:18:26
@mikroskeem:d0.eeMarkunsure atm15:19:08
@bernardo:matrix.parity.iobernardo

ok I think I figured it out... after seeing this error message:

error: failed to write /run/user/1000/rustchcAPeP/lib.rmeta: No space left on device (os error 28)

so I ran:

$ sudo mount -o remount,size=10G /run/user/1000
15:34:20
@mikroskeem:d0.eeMarkaha15:41:46
27 Jan 2022
@drupol:matrix.orgPol joined the room.08:55:37

Show newer messages


Back to Room ListRoom Version: 6