Closed Axadiw closed 3 years ago
As @hoffmang9 suggested, i've tried to do this:
pkg install rust
pip install maturin
pip install clvm-rs
Rust and maturing have succeded, but building clvm-rs failed:
Collecting clvm-rs
Using cached clvm_rs-0.1.2.tar.gz (7.0 MB)
Installing build dependencies ... done
Getting requirements to build wheel ... done
Installing backend dependencies ... done
Preparing wheel metadata ... done
Building wheels for collected packages: clvm-rs
Building wheel for clvm-rs (PEP 517) ... error
ERROR: Command errored out with exit status 1:
command: /usr/local/bin/python3.7 /usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py build_wheel /tmp/tmpteu9enuy
cwd: /tmp/pip-install-syq3jb5a/clvm-rs
Complete output (1071 lines):
Running `maturin pep517 build-wheel -i python --bindings=cffi --manylinux=2010`
Compiling proc-macro2 v1.0.24
Compiling unicode-xid v0.2.1
Compiling syn v1.0.60
Compiling autocfg v1.0.1
Compiling libc v0.2.86
Compiling proc-macro-hack v0.5.19
Compiling radium v0.4.1
Compiling typenum v1.12.0
Compiling maybe-uninit v2.0.0
Compiling wyz v0.2.0
Compiling byteorder v1.4.2
Compiling funty v1.2.0
Compiling cfg-if v1.0.0
Compiling rand_core v0.5.1
Compiling subtle v2.4.0
Compiling smallvec v1.6.1
Compiling inventory v0.1.10
Compiling scopeguard v1.1.0
Compiling byte-tools v0.3.1
Compiling stable_deref_trait v1.2.0
Compiling unindent v0.1.7
Compiling pyo3 v0.13.2
Compiling fake-simd v0.1.2
Compiling opaque-debug v0.2.3
Compiling smallvec v0.4.5
Compiling lazy_static v1.4.0
Compiling hex v0.3.2
Compiling num-traits v0.2.14
Compiling num-integer v0.1.44
Compiling num-bigint v0.3.1
Compiling instant v0.1.9
Compiling lock_api v0.4.2
Compiling block-padding v0.1.5
Compiling owning_ref v0.3.3
Compiling bitvec v0.18.4
Compiling rand v0.4.6
Compiling parking_lot_core v0.8.3
Compiling quote v1.0.9
Compiling smallvec v0.6.14
error: could not compile `bitvec`
To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed
💥 maturin failed
Caused by: Failed to build a native library through cargo
Caused by: Cargo build finished with "exit code: 101": `cargo rustc --message-format json --manifest-path Cargo.toml --release --lib --`
🐍 Using CPython 3.7m at python to generate the cffi bindings
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:307:25
|
307 | check("load", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
307 | check("load", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
307 | check("load", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:341:12
|
341 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
341 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
341 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:341:19
|
304 | fn load_le<M>(&self) -> M
| - this type parameter
...
341 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:362:25
|
362 | check("load", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
362 | check("load", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
362 | check("load", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:377:12
|
377 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
377 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
377 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:377:19
|
359 | fn load_be<M>(&self) -> M
| - this type parameter
...
377 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:397:26
|
397 | check("store", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
397 | check("store", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
397 | check("store", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:412:12
|
412 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
412 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
412 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:412:19
|
394 | fn store_le<M>(&mut self, mut value: M)
| - this type parameter
...
412 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:428:26
|
428 | check("store", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
428 | check("store", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
428 | check("store", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:442:12
|
442 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
442 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
442 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:442:19
|
425 | fn store_be<M>(&mut self, mut value: M)
| - this type parameter
...
442 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:467:25
|
467 | check("load", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
467 | check("load", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
467 | check("load", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:487:12
|
487 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
487 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
487 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:487:19
|
464 | fn load_le<M>(&self) -> M
| - this type parameter
...
487 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:507:25
|
507 | check("load", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
507 | check("load", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
507 | check("load", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:523:12
|
523 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
523 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
523 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:523:19
|
504 | fn load_be<M>(&self) -> M
| - this type parameter
...
523 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:548:26
|
548 | check("store", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
548 | check("store", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
548 | check("store", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:565:12
|
565 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
565 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
565 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:565:19
|
545 | fn store_le<M>(&mut self, mut value: M)
| - this type parameter
...
565 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:586:26
|
586 | check("store", len, M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
586 | check("store", len, BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
586 | check("store", len, IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:608:12
|
608 | if M::BITS > T::Mem::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
608 | if BitMemory::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
608 | if IsNumber::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^^^
error[E0308]: mismatched types
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/field.rs:608:19
|
583 | fn store_be<M>(&mut self, mut value: M)
| - this type parameter
...
608 | if M::BITS > T::Mem::BITS {
| ^^^^^^^^^^^^ expected type parameter `M`, found `u8`
|
= note: expected type parameter `M`
found type `u8`
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:466:45
|
466 | pub(crate) const END: Self = make!(tail M::BITS);
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
466 | pub(crate) const END: Self = make!(tail BitMemory::BITS);
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
466 | pub(crate) const END: Self = make!(tail IsNumber::BITS);
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:145:16
|
145 | if idx >= M::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
145 | if idx >= BitMemory::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
145 | if idx >= IsNumber::BITS {
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:169:13
|
169 | idx < M::BITS,
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
169 | idx < BitMemory::BITS,
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
169 | idx < IsNumber::BITS,
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:172:7
|
172 | M::BITS
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
172 | BitMemory::BITS
|
help: disambiguate the associated constant for candidate #2
|
172 | IsNumber::BITS
|
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:190:42
|
190 | (make!(idx next & M::MASK), next == M::BITS)
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
190 | (make!(idx next & M::MASK), next == BitMemory::BITS)
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
190 | (make!(idx next & M::MASK), next == IsNumber::BITS)
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:325:16
|
325 | if (0 .. M::BITS as isize).contains(&far) {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
325 | if (0 .. BitMemory::BITS as isize).contains(&far) {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
325 | if (0 .. IsNumber::BITS as isize).contains(&far) {
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:488:14
|
488 | end <= M::BITS,
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
488 | end <= BitMemory::BITS,
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
488 | end <= IsNumber::BITS,
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:491:7
|
491 | M::BITS
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
491 | BitMemory::BITS
|
help: disambiguate the associated constant for candidate #2
|
491 | IsNumber::BITS
|
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:546:26
|
546 | let bits_in_head = (M::BITS - head) as usize;
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
546 | let bits_in_head = (BitMemory::BITS - head) as usize;
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
546 | let bits_in_head = (IsNumber::BITS - head) as usize;
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:640:16
|
640 | if pos >= M::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
640 | if pos >= BitMemory::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
640 | if pos >= IsNumber::BITS {
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:667:13
|
667 | pos < M::BITS,
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
667 | pos < BitMemory::BITS,
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
667 | pos < IsNumber::BITS,
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:670:7
|
670 | M::BITS
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
670 | BitMemory::BITS
|
help: disambiguate the associated constant for candidate #2
|
670 | IsNumber::BITS
|
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:805:7
|
805 | M::BITS as usize
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
805 | BitMemory::BITS as usize
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
805 | IsNumber::BITS as usize
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:850:40
|
850 | write!(fmt, "{:0>1$b}", self.sel, M::BITS as usize)
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
850 | write!(fmt, "{:0>1$b}", self.sel, BitMemory::BITS as usize)
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
850 | write!(fmt, "{:0>1$b}", self.sel, IsNumber::BITS as usize)
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/index.rs:977:41
|
977 | write!(fmt, "{:0>1$b}", self.mask, M::BITS as usize)
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
977 | write!(fmt, "{:0>1$b}", self.mask, BitMemory::BITS as usize)
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
977 | write!(fmt, "{:0>1$b}", self.mask, IsNumber::BITS as usize)
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:28:25
|
28 | const INDX: u8 = Self::BITS.trailing_zeros() as u8;
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
28 | const INDX: u8 = BitMemory::BITS.trailing_zeros() as u8;
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
28 | const INDX: u8 = IsNumber::BITS.trailing_zeros() as u8;
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:30:25
|
30 | const MASK: u8 = Self::BITS - 1;
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
30 | const MASK: u8 = BitMemory::BITS - 1;
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
30 | const MASK: u8 = IsNumber::BITS - 1;
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/order.rs:278:15
|
278 | if ct == M::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
278 | if ct == BitMemory::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
278 | if ct == IsNumber::BITS {
| ^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/order.rs:318:15
|
318 | if ct == M::BITS {
| ^^^^ multiple `BITS` found
|
note: candidate #1 is defined in the trait `BitMemory`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/bitvec-0.18.4/src/mem.rs:26:2
|
26 | const BITS: u8 = mem::size_of::<Self>() as u8 * 8;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: candidate #2 is defined in the trait `IsNumber`
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/funty-1.2.0/src/lib.rs:144:2
|
144 | const BITS: u32;
| ^^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #1
|
318 | if ct == BitMemory::BITS {
| ^^^^^^^^^^^^^^^
help: disambiguate the associated constant for candidate #2
|
318 | if ct == IsNumber::BITS {
| ^^^^^^^^^^^^^^
error: aborting due to 43 previous errors
Some errors have detailed explanations: E0034, E0308.
For more information about an error, try `rustc --explain E0034`.
Error: command ['maturin', 'pep517', 'build-wheel', '-i', 'python', '--bindings=cffi', '--manylinux=2010'] returned non-zero exit status 1
----------------------------------------
ERROR: Failed building wheel for clvm-rs
Failed to build clvm-rs
ERROR: Could not build wheels for clvm-rs which use PEP 517 and cannot be installed directly```
I think you need to use rustup though pip may have installed it correctly. Either way, I doubt rust is in your path when you're trying to build clvm-rs.
I've installed rust via pkg not pip :)
And it looks like there are some rust binaries in my PATH
I've seen this problem. It's an upstream problem with funty
. There is a file Cargo.lock
, that pins the dependencies to versions without this problem. I guess the .tar.gz
source dist is missing this file, boo. Try doing a git clone
of git@github.com:Chia-Network/clvm_rs.git
and git checkout 0.1.4
(which is a tag, not a branch, so it shouldn't change). Then do pip install (path_to_clvm_rs)
.
Or, in the clvm_rs
directory, do maturin build --release
and when it's done, it should leave a .whl
wheel file which you can install with pip install clvm_rs.xxxxxxx.whl
(not sure the exact name).
(I know, too many choices.)
compiled with maturin build --release
and than pip install /root/clvm_rs/target/wheels/clvm_rs-0.1.4-cp37-cp37m-freebsd_11_3_RELEASE_p14_amd64.whl
Than changed setup.py
to correspond with 0.1.4
version
clvm_rs==0.1.4
But still the an error:
ERROR: Could not find a version that satisfies the requirement clvm-rs==0.1.4 (from chia-blockchain)
ERROR: No matching distribution found for clvm-rs==0.1.4
I've tried also with
"clvm_rs==0.1.4-cp37-cp37m-freebsd_11_3_RELEASE_p14_amd64"
in setup.py
, but still with no luck
Which version should I put into setup.py
?
I'm assuming you mean the chia-blockchain
setup.py
file. After you change setup.py
, you have to do pip install -e .
again for the new requirements to take effect. It's probably still expecting 0.1.13.
Hmm, actually no, that's not it.
Let me try to reproduce on FreeBSD. I'm going to do a pull from dev
, since it now expects 0.1.4 and start from there.
I was able to get it to build on d0a08d2a9334ebcf28742f76c47817dcda2fd45b using export BUILD_VDF_CLIENT=N; pip install -e .
, although my virtualenv was not new. I'll try deleting & rebuilding a clean venv, and doing it all with just that one command.
See also https://github.com/Chia-Network/chia-blockchain/wiki/FreeBSD-Install any tips you have would be greatly appreciated there.
I created a clean venv, manually installed clvm_rs 0.1.4 with
pip install ../clvm_rs/target/wheels/clvm_rs-0.1.4-cp37-cp37m-freebsd_12_2_RELEASE_p3_amd64.whl
then
export BUILD_VDF_CLIENT=N; pip install -v -e .
seemed to work.
Hmm, still problems.
It looks like clvm-rs
is installed correctly:
root@chia:~/chia-blockchain # pip show clvm-rs
Name: clvm-rs
Version: 0.1.4
Summary: None
Home-page: None
Author: Richard Kiss <him@richardkiss.com>
Author-email: Richard Kiss <him@richardkiss.com>
License: None
Location: /usr/local/lib/python3.7/site-packages
Requires:
Required-by: chia-blockchain
but install.sh still fails:
root@chia:~/chia-blockchain # sh install.sh
Python version is 3.7
Requirement already satisfied: pip in ./venv/lib/python3.7/site-packages (21.0.1)
Requirement already satisfied: wheel in ./venv/lib/python3.7/site-packages (0.36.2)
Looking in indexes: https://pypi.org/simple, https://download.chia.net/simple/
Requirement already satisfied: miniupnpc==2.1 in ./venv/lib/python3.7/site-packages (2.1)
Looking in indexes: https://pypi.org/simple, https://download.chia.net/simple/
Obtaining file:///root/chia-blockchain
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing wheel metadata ... done
Collecting click==7.1.2
Using cached click-7.1.2-py2.py3-none-any.whl (82 kB)
Collecting aiter==0.13.20191203
Using cached aiter-0.13.20191203-py3-none-any.whl
Collecting aiosqlite==0.17.0
Using cached aiosqlite-0.17.0-py3-none-any.whl (15 kB)
Collecting aiohttp==3.7.4
Using cached aiohttp-3.7.4-cp37-cp37m-freebsd_11_3_release_p14_amd64.whl
Collecting chiapos==0.12.45
Using cached chiapos-0.12.45-cp37-cp37m-freebsd_11_3_release_p14_amd64.whl
Collecting clvm==0.9.3
Using cached clvm-0.9.3-py3-none-any.whl (19 kB)
Collecting chiavdf==0.15.0
Using cached chiavdf-0.15.0-cp37-cp37m-freebsd_11_3_release_p14_amd64.whl
Collecting chiabip158==0.19
Using cached chiabip158-0.19-cp37-cp37m-freebsd_11_3_release_p14_amd64.whl
Collecting concurrent-log-handler==0.9.19
Using cached concurrent_log_handler-0.9.19-py2.py3-none-any.whl (18 kB)
Collecting clvm-tools==0.4.3
Using cached clvm_tools-0.4.3-py3-none-any.whl (36 kB)
Collecting websockets==8.1.0
Using cached websockets-8.1-cp37-cp37m-freebsd_11_3_release_p14_amd64.whl
Collecting keyrings.cryptfile==1.3.4
Using cached keyrings.cryptfile-1.3.4-py2.py3-none-any.whl
Collecting blspy==0.3.5
Using cached blspy-0.3.5-cp37-cp37m-freebsd_11_3_release_p14_amd64.whl
ERROR: Could not find a version that satisfies the requirement clvm-rs==0.1.4 (from chia-blockchain)
ERROR: No matching distribution found for clvm-rs==0.1.4
Location: /usr/local/lib/python3.7/site-packages
Looks like your clvm-rs is installed globally and not in the venv. Use source activate
to ensure you're in the virtualenv, then reinstall clvm-rs again. (I recommend removing clvm-rs from the global site-packages with pip uninstlall clvm-rs
while NOT in the venv.) [Check out python docs for more on venv if you're not familar.]
Every method discussed so far fails to build maturin with:
subprocess.CalledProcessError: Command '['/usr/local/bin/cargo', 'rustc', '--bin', 'maturin', '--message-format=json', '--', '-C', 'link-arg=-s']' returned non-zero exit status 101.
----------------------------------------
ERROR: Failed building wheel for maturin
Failed to build maturin
ERROR: Could not build wheels for maturin which use PEP 517 and cannot be installed directly
All attempted in fresh venv. Otherwise was running into the same issues but on FreeBSD 12.2 Release.
So I can't even build that 0.1.4 version of clvm_rs because I can't build maturin. lang/rust is installed and cargo is in my path and available
Ok. Appears we have two unrelated problems here. First is building clvm_rs
due to incorrect dependency versions. Solution as described by @richardkiss works for that. Second problem, however, will effect anyone not on FreeBSD 11 but on e.g. FreeBSD 12.2 Release. Gist of it default ld
segfaults when you attempt to pip install maturin
.
Issue described in https://github.com/PyO3/maturin/issues/363 and appears to have been resolved but unless you want to switch to FreeBSD Stable or Current it won't work for you. The following ugly hack with temporarily replacing LLVM ld
with GCC9 ld
worked:
cd chia-blockchain
. activate
pkg install gcc
sudo mv /usr/bin/ld /usr/bin/ld.bak
ln -s /usr/local/bin/ld /usr/bin/ld
pip install maturin
# assuming you changed version of clvm_rs in setup.py and you have its repo checked out
pip install ../clvm_rs
# finally
sh install.sh
# don't forget to put default ld back
sudo mv /usr/bin/ld.bak /usr/bin/ld
I actually first tried this but I guess rust tooling does its own binary resolution so it didn't help:
(PATH=/usr/local/bin:$PATH; pip install maturin)
better shell hacker than me could come up with something less ugly than symlinking and moving files around.
Fellas. I know not many people run chia on FreeBSD, but IMO having automated build scripts for at least BSD 11 and BSD 12 Release would be nice and help community. I recall @hoffmang9 mention this a long while back. Please consider.
I'm probably headed to the datacenter to start installing our k8's cluster where were going to have full *BSD runners. We're going to keep BSD a first class supported OS. The only challenge is PyPi not letting us publish wheels there...
clvm_rs-0.1.4-cp37-cp37m-freebsd_11_3_RELEASE_amd64.whl is now available on https://pypi.chia.net/simple/clvm-rs
I've no idea exactly how Python or Pip resolve deps etc but here is what I'm getting:
> pip install --extra-index-url https://pypi.chia.net/simple/ clvm_rs==0.1.4
Looking in indexes: https://pypi.org/simple, https://pypi.chia.net/simple/clvm-rs
ERROR: Could not find a version that satisfies the requirement clvm_rs==0.1.4
ERROR: No matching distribution found for clvm_rs==0.1.4
Is it because you only deployed freebsd_11_3
while I am on 12.2 Release:
uname -a
FreeBSD 12.2-RELEASE-p4 FreeBSD 12.2-RELEASE-p4 GENERIC amd64
And because, like I said, I've no idea how those indexes work and I don't trust any software to ever get clvm-rs
vs clvm_rs
right I also tried these for good measure:
pip install --extra-index-url https://pypi.chia.net/simple/ clvm-rs==0.1.4
Looking in indexes: https://pypi.org/simple, https://pypi.chia.net/simple/
ERROR: Could not find a version that satisfies the requirement clvm-rs==0.1.4
ERROR: No matching distribution found for clvm-rs==0.1.4
pip install --extra-index-url https://pypi.chia.net/simple/clvm-rs clvm_rs==0.1.4
Looking in indexes: https://pypi.org/simple, https://pypi.chia.net/simple/clvm-rs
ERROR: Could not find a version that satisfies the requirement clvm_rs==0.1.4
ERROR: No matching distribution found for clvm_rs==0.1.4
pip install -i https://pypi.chia.net/simple/ clvm_rs==0.1.4
Looking in indexes: https://pypi.chia.net/simple/
ERROR: Could not find a version that satisfies the requirement clvm_rs==0.1.4
ERROR: No matching distribution found for clvm_rs==0.1.4
pip install -i https://pypi.chia.net/simple/clvm-rs clvm_rs
Looking in indexes: https://pypi.chia.net/simple/clvm-rs
ERROR: Could not find a version that satisfies the requirement clvm_rs
ERROR: No matching distribution found for clvm_rs
...
Describe the bug I'm trying to compile chia on FreeBSD 11.3, but it tails with this error:
To Reproduce Steps to reproduce the behavior:
main
setup.py
accordingly to the https://github.com/Chia-Network/chia-blockchain/wiki/FreeBSD-Installsh install.sh
Expected behavior Compiled version of chia
Desktop (please complete the following information):