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

Document minimum required version of Rust + Cargo in README #39

Closed
andreparodi opened this issue Dec 2, 2016 · 8 comments
Closed

Document minimum required version of Rust + Cargo in README #39

andreparodi opened this issue Dec 2, 2016 · 8 comments

Comments

@andreparodi
Copy link

I trying to build on ubuntu 16.04 and getting and error. Is there any chance you could provide some more detailed instruction about what dependencies need to be installed. rust, docker? what is the prefered install method?

Unable to find image 'luser/rust-musl-builder:latest' locally
latest: Pulling from luser/rust-musl-builder
357ea8c3d80b: Pull complete
a3ed95caeb02: Pull complete
17eec89006f1: Pull complete
b90aacaf5477: Pull complete
09416fd865ce: Pull complete
5e7229b6f848: Pull complete
92f5a003f128: Pull complete
859d74d4ebb3: Pull complete
caabe158e9f8: Pull complete
Digest: sha256:60e50d539670cc756ef95f686ec82fe848e4d341c6017313876332cc737f137c
Status: Downloaded newer image for luser/rust-musl-builder:latest
error: Permission denied (os error 13)

tried modifying the build script to run with sudo but no luck. i'm new to rust and docker so could be i'm missing something very obvious.

@luser
Copy link
Contributor

luser commented Dec 2, 2016

You should be able to simply run cargo build to build the binary, or cargo build --release if you want an optimized binary. The build-release script is just what I use to build release binaries locally, it depends on some quirky things.

Once I get a few more things together I'd like to publish prebuilt binaries via GitHub releases, which should make things simpler for people.

@andreparodi
Copy link
Author

thanks @luser

didn't realise that was the standard build command for rust. thanks.

i face a different problem now.

'''
andrep@bardtw2827 ~/dev/sccache (master) $ cargo -V
cargo 0.8.0 (built 2016-03-22)
andrep@bardtw2827 ~/dev/sccache (master) $ cargo build
failed to parse manifest at /home/andrep/dev/sccache/Cargo.toml

Caused by:
could not parse input as TOML
Cargo.toml:34:9 expected a key but found an empty string
Cargo.toml:34:9-34:10 expected ., but found '

'''

seems think the cfg(unix) might be causing the problem.

@luser
Copy link
Contributor

luser commented Dec 2, 2016

I don't know specifically what version of Rust+cargo the project requires, but I've been building it locally with Rust 1.12, which ships with cargo 0.13. The build automation I set up with Travis only tests against the latest stable Rust release and nothing older, so it's entirely likely that it requires Rust 1.12 (and its matching cargo).

I'd recommend installing Rust via rustup, which makes it easy to keep your Rust toolchain up-to-date.

@luser luser changed the title building instructions Document minimum required version of Rust + Cargo in README Dec 7, 2016
@luser
Copy link
Contributor

luser commented Dec 7, 2016

It looks like support for [target.'cfg(...)'.dependencies] first shipped in cargo 0.9, so we definitely require at least that version:
rust-lang/cargo@4739ba1

@luser
Copy link
Contributor

luser commented Dec 7, 2016

Since my change to use lru-cache we'll require Rust 1.9.0. I'll document this and add building against that version to the CI.

@luser
Copy link
Contributor

luser commented Dec 7, 2016

Apparently futures requires Rust 1.10:
rust-lang/rust#31767

@luser
Copy link
Contributor

luser commented Dec 7, 2016

Apparently building only requires Rust 1.10, but building tests requires Rust 1.12, because I'm using the From<T> impl for Option<T>.

@luser
Copy link
Contributor

luser commented Dec 7, 2016

I noted that the minimum required Rust version is 1.12 in the README:
982ff32

I added builds against Rust 1.12 to the Travis CI, so we should be able to guarantee that we don't unintentionally break that.

@luser luser closed this as completed Dec 7, 2016
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