solana
solana copied to clipboard
error: package `solana-program v1.18.0` cannot be built because it requires rustc 1.72.0 or newer, while the currently active rustc version is 1.68.0-dev
Problem
I am using anchor framework ,and running anchor build. I am having a problem between solana-program and rustc , I have confirme rustc --version 1.72.0 on my console, where I am getting the problem?
error: package solana-program v1.18.0 cannot be built because it requires rustc 1.72.0 or newer, while the currently active rustc version is 1.68.0-dev
Proposed Solution
~~Looks like someone on the team forgot to update the sbf sdk before releasing 1.18.0.~~
Basically when you build a solana program with cargo-build-sbf, you're not actually using your system's rust compiler. You're using one with changes necessary for building solana programs (repo: https://github.com/solana-labs/rust). This is typically located at ~/.local/share/solana/install/active_release/bin/sdk/sbf/dependencies/platform-tools if you had installed it with the provided shell script.
You can check which version of of rustc cargo-build-sbf is using by running cargo-build-sbf --version which should output something like this:
solana-cargo-build-sbf 1.17.6
platform-tools v1.37
rustc 1.68.0
By right, solana v1.18.0 should be using their patched version of rustc 1.72 (the default solana-tools-v1.39 tag on their rust fork linked above) ~~but I guess someone forgot to update the install tool script. Your best bet is probably to downgrade to 1.17 for now. 1.18 is marked as a pre-release anyway.~~
EDIT: sorry, had this issue confused with https://github.com/solana-labs/solana/issues/32361#issuecomment-1913491335 and thought that the install script wasnt working correctly. Just tried the build tools for 1.18, it works fine, installs the patched rustc 1.72 and all
Yes!, it worked. I deleted the cargo.lock file and than use cargo add solana-program@=1.17.0 and than typed anchor build it worked . Thanks man.
In general you need your solana tools versions to match whatever version of solana-program is being used in your program.
To handle working with multiple solana-program versions across different programs, I keep the following bash alias around to change the symlink of the active solana release to the desired version:
function solana_vers() { ln -sfn ~/.local/share/solana/install/releases/$1/solana-release ~/.local/share/solana/install/active_release; }
alias solanavers="solana_vers"
# Example usage: solanavers 1.18.0
You can confirm that your build tools are the correct version using cargo-build-sbf --version and if they aren't after changing the solana version, you can use cargo-build-sbf --force-tools-install to install the correct one.
Forced 1.17 as suggested @billythedummy . Did it just like @hammad-ali18 did by running cargo add solana-program@=1.17.0
That worked! Well it worked to update my crates to 1.17 but now it opened up more errors.
error: linker cc not found
|
= note: No such file or directory (os error 2)
error: could not compile proc-macro2 due to previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile semver due to previous error
error: could not compile syn due to previous error
I am still doing the Hello World program on the solana site not on Anchor. I'm over it though. I want nothing to do with Trying to learn where the Hello World tutorial is busted. Lmao.
Getting same error here
and then if I follow the advice for cargo add solana-program@=1.17.0 then I end up with new errors
error: linker cc not found | = note: No such file or directory (os error 2)
Do you have build-essential and pkg-config apt installed?
@billythedummy I did not have them installed. I'm going to nuke my server and start yet again lol. Have you tried running line by line through the install on a fresh build to see where we are getting stuck? I'm sorry that's a bit of an ask but I'd really like to see your process to get around our issue.
bleh... fresh install on brand new server. build-essential, pkg-config and every other thing I could think of, search or make up to install beforehand and this is what we get.
to resolve this Error Simply Run 2 Commands
1- cargo add solana-program@=1.17.0
Then Run
2- cargo update -p solana-program
After Simply Run : anchor build . and you Good To Go
You have two options to resolve this without downgrading:
- Upgrade to the 1.18 tools with
solana-install init 1.18.0 - As of
cargo build-sbfthat comes bundled with 1.16, you can use the--tools-versionargument to use a different version of the build tools. Version 1.39 of the build tools contains a Rust compiler at 1.72, so you can run:cargo build-sbf --tools-version v1.39
@hamzagill906 thank you so much. I actually solved it a couple hours ago and I'll pin it here when I figure out how to do that and wake up! 😂. Had 1.5 hours of sleep before getting my son to school after coding last night. I had to do one thing in addition to what you said and that was put the = sign inside the quotes in my Cargo.toml to make the version stick:
solana-program = "=1.17.17"
Perfect response though and I greatly appreciate it! 👊🏻
@joncinque Great info! This what I'm talking about. A few nuggets of info like this added to the docs and the tutorials would save a lot of people much grief when first arriving. Plus save a whole lot more people from hearing my bitching! 😂❤️❤️
@jakerumbles if you are facing issue like use of unstable library feature 'build_hasher_simple_hash_one'
in your respective project. locate the folder.
programs/xyz_proj_name/cargo.toml file. it will work if you are using solana-program = { version = "=1.17.0"}
Simply you have to add the dependency list.
[dependencies] ahash = "=0.8.6"
i tried and it works in my case. So you can also Try.
#34991 Was where I finally had the aha moment and listened to everyone about making cli and solana-program line up but the comments in here are solving it as well! Sorry for the commotion yesterday but it appears many more of us a getting it installed properly 🤣
A few nuggets of info like this added to the docs and the tutorials would save a lot of people much grief when first arriving
This issue blind-sided me too if I'm being honest :sweat_smile: I wrote up this Stack Exchange question in the hopes that others find it: https://solana.stackexchange.com/questions/9798/error-building-program-with-solana-program-v1-18-and-cli-v1-17/9799#9799
If there are no more questions, I'll close this issue
People ask about this error all the time so I'm linking https://github.com/solana-labs/solana/issues/31428 once again.
Getting same error here
and then if I follow the advice for
cargo add solana-program@=1.17.0then I end up with new errors
I was having the same issue and I solved it with this
cargo update -p [email protected] --precise 0.8.6
Thanks a ton @hamzagill906! It compiles now with this for my cargo.toml

