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

[Bug]: Cannot Install Heimdall - "could not compile ethers-contract" #57

Closed
2 tasks done
kryptoklob opened this issue Feb 7, 2023 · 9 comments
Closed
2 tasks done
Assignees

Comments

@kryptoklob
Copy link
Contributor

Component

Installing heimdall

Version

Latest bifrost.

Please check the following

  • This is not a duplicate issue
  • I have checked the wiki and tried troubleshooting the issue

Operating System

Linux

Describe the issue you are facing

Compilation error of ethers-contract.

Error log below:

error[E0658]: use of unstable library feature 'into_future'
  --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:20:22
   |
20 |     future::{Future, IntoFuture},
   |                      ^^^^^^^^^^
   |
   = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

error[E0658]: use of unstable library feature 'into_future'
   --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:230:5
    |
230 |     type Output = Result<D, ContractError<M>>;
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

error[E0658]: use of unstable library feature 'into_future'
   --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:231:5
    |
231 |     type IntoFuture = Pin<Box<dyn Future<Output = Self::Output>>>;
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

error[E0658]: use of unstable library feature 'into_future'
   --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:233:5
    |
233 | /     fn into_future(self) -> Self::IntoFuture {
234 | |         Box::pin(async move { self.call().await })
235 | |     }
    | |_____^
    |
    = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

error[E0658]: use of unstable library feature 'into_future'
   --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:224:12
    |
224 | impl<M, D> IntoFuture for ContractCall<M, D>
    |            ^^^^^^^^^^
    |
    = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

error[E0658]: use of unstable library feature 'into_future'
   --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:231:51
    |
231 |     type IntoFuture = Pin<Box<dyn Future<Output = Self::Output>>>;
    |                                                   ^^^^^^^^^^^^
    |
    = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

error[E0658]: use of unstable library feature 'into_future'
   --> /home/caleb/.cargo/registry/src/github.com-1ecc6299db9ec823/ethers-contract-1.0.2/src/call.rs:233:29
    |
233 |     fn into_future(self) -> Self::IntoFuture {
    |                             ^^^^^^^^^^^^^^^^
    |
    = note: see issue #67644 <https://github.com/rust-lang/rust/issues/67644> for more information

For more information about this error, try `rustc --explain E0658`.
error: could not compile `ethers-contract` due to 7 previous errors
error: failed to compile `heimdall v0.3.0 (/home/caleb/.bifrost/build/heimdall-rs/heimdall)`, intermediate artifacts can be found at `/home/caleb/.bifrost/build/heimdall-rs/target`
bifrost: required command 'cargo install --path ./heimdall --bins --locked --force --root /home/caleb/.bifrost' failed.
@kryptoklob kryptoklob changed the title [Bug]: Cannot Install [Bug]: Cannot Install Heimdall - "could not compile ethers-contract" Feb 7, 2023
@kryptoklob
Copy link
Contributor Author

kryptoklob commented Feb 7, 2023

Falling back to binary install now, thanks for making such a useful installer!

edit: binary requires libssl-dev package to be installed on Linux, I think. Might want to check for that.
edit 2: also requires glibc & openssl, which I do already have installed. Seems to be a versioning issue? Unsure - stuck here.

@Jon-Becker
Copy link
Owner

Running the binary runs into those issues? I'm not sure why that's happening.

Which version of heimdall-rs caused the above errors? 0.3.0?

@kryptoklob
Copy link
Contributor Author

@Jon-Becker yes, 0.3.0 for both attempting to compile from source & the binary.

@Jon-Becker
Copy link
Owner

I'll have this issue addressed in 0.3.1 tomorrow.

@kryptoklob
Copy link
Contributor Author

Great, thanks!

@kryptoklob
Copy link
Contributor Author

kryptoklob commented Feb 7, 2023

@Jon-Becker here's the output when attempting to run the binary, after fixing a few initial issues with libssl:

❯ heimdall
heimdall: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by heimdall)
heimdall: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by heimdall)
heimdall: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by heimdall)
heimdall: /lib/x86_64-linux-gnu/libssl.so.3: version `OPENSSL_3.0.0' not found (required by heimdall)
heimdall: /lib/x86_64-linux-gnu/libcrypto.so.3: version `OPENSSL_3.0.0' not found (required by heimdall)

Tried installing glibc with sudo apt-get install glibc-source but this did not help.

Edit: Looks like I need to upgrade my Ubuntu distro - max version for glibc for me is 2.31. Doing so now.
Edit2: ...looks like it's probably a bad idea to attempt to upgrade to v2.32 for glibc. Will just wait and see what happens.

@Jon-Becker
Copy link
Owner

I'm unable to reproduce this issue. Is your rust version up to date?

@kryptoklob
Copy link
Contributor Author

@Jon-Becker yes, updated Rust as part of troubleshooting. What info do you need to repro?

@kryptoklob
Copy link
Contributor Author

Hmm. Was able to install on another machine. Going to close this issue as it's clearly something with my desktop setup. Shrug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants