View previous topic :: View next topic |
Author |
Message |
yookoala n00b
Joined: 23 Oct 2024 Posts: 3
|
Posted: Wed Oct 23, 2024 5:05 am Post subject: ebuild selected require cpu_flags_x86_sse2 [SOLVED] |
|
|
I'm trying to install Gentoo on an old laptop.
I have arrived at the step to run grub-install and it failed. Turns out the grub installation was not successful. Through out the installation process, I think I missed several signs that some previous step has failed.
If I read the error correctly, it says something like "because some of my selected package requires rust, and rust needs my CPU to support SSE2, the installation fails."
So my questions are:
- How do I unselect packages that cause the installation problem(s)?
- I can do my installation without GNOME. Is there a way I can install a systemd-boot setup without rust?
- If I cannot use systemd, then how do I revert my installation enough for a sysinitv installation without redo all my installation procedures?
Contexts:
If I now run:
Code: |
emerge --ask --verbose @world
|
I will get these error messages:
Code: |
!!! The ebuild selected to satisfy "~dev-lang/rust-bin-1.80.1[profiler?,rustfmt?abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?]" has unmet requirements.
- dev-lang/rust-bin-1.80.1:gentoo USE="(-big-endian) -clippy -doc (-prefix) -profiler) -rust-analyzer -rust-src -rustfmt -verify-sig" CPU_FLAGS_X86="-sse2"
The following REQUIRED_USE flag constraints are unsatisfied:
x86? ( cpu_flags_x86_sse2 )
(dependency required by "virtual/rust-1.80.1::gentoo" [ebuild])
(dependency required by "gnome-base/librsvg-2.57.3::gentoo" [ebuild])
(dependency required by "x11-themes/adwaita-icon-themes-45.0::gentoo" [ebuild])
(dependency required by "x11-libs/gtk+-3.24.41-r1::gentoo" [ebuild])
(dependency required by "gnome-extra/polkit-gnome-0.105-r2::gentoo" [ebuild])
(dependency required by "sys-auth/polkit-124-r1::gentoo[gtk]" [ebuild])
(dependency required by "sys-apps/systemd-25.11::gentoo[policykit]" [ebuild])
|
Last edited by yookoala on Fri Oct 25, 2024 10:43 am; edited 2 times in total |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31251 Location: here
|
Posted: Wed Oct 23, 2024 5:32 am Post subject: |
|
|
I think it is the gnome-base/librsvg package that requires rust to compile, but there are other packages that may require rust.
You can install the precompiled dev-lang/rust-bin instead of dev-lang/rust. _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 22560
|
Posted: Wed Oct 23, 2024 1:50 pm Post subject: |
|
|
Welcome to the forums.
Unfortunately, even rust-bin requires SSE2. This is a known issue upstream, which the Rust project refuses to fix. They only provide rust compilers that require SSE2. I think some users (possibly eccerr0r?) have managed to get a no-SSE2 Rust to build, but it requires some special work. Avoiding Rust entirely on no-SSE2 systems is probably the path of less frustration. A quick search for rust sse2 x86 leads me to https://docs.rs/safe_arch which claims: https://docs.rs/safe_arch wrote: | you'd need a super old x86 CPU for it to not support at least sse and sse2 , so they're a safe bet for the language to enable all the time. | I leave it to the reader whether that is really a safe bet. The second hit is https://wiki.gentoo.org/wiki/Rust_x86_without_SSE2, which looks promising, though I have never tried it.
Before embarking on any of that, OP, are you sure your CPU doesn't support SSE2? The Portage message only says you did not tell Portage that it can use SSE2. You might (or might not) be able to grant it that permission and have everything work. If unsure, please tell us exactly what CPU you have. The output of cat /proc/cpuinfo (limited to the first block) should suffice. |
|
Back to top |
|
|
yookoala n00b
Joined: 23 Oct 2024 Posts: 3
|
Posted: Thu Oct 24, 2024 8:35 am Post subject: |
|
|
Thank you both for replying.
Hu wrote: | Welcome to the forums.
Unfortunately, even rust-bin requires SSE2. This is a known issue upstream, which the Rust project refuses to fix. They only provide rust compilers that require SSE2. I think some users (possibly eccerr0r?) have managed to get a no-SSE2 Rust to build, but it requires some special work. Avoiding Rust entirely on no-SSE2 systems is probably the path of less frustration. A quick search for rust sse2 x86 leads me to https://docs.rs/safe_arch which claims: https://docs.rs/safe_arch wrote: | you'd need a super old x86 CPU for it to not support at least sse and sse2 , so they're a safe bet for the language to enable all the time. | I leave it to the reader whether that is really a safe bet. The second hit is https://wiki.gentoo.org/wiki/Rust_x86_without_SSE2, which looks promising, though I have never tried it.
Before embarking on any of that, OP, are you sure your CPU doesn't support SSE2? The Portage message only says you did not tell Portage that it can use SSE2. You might (or might not) be able to grant it that permission and have everything work. If unsure, please tell us exactly what CPU you have. The output of cat /proc/cpuinfo (limited to the first block) should suffice. |
Thanks for the advice about checking the CPU.
I've run the and I do see "sse", "sse2", "ssse3", "sse4_1" and even "sse4_2" support. So this is probably not the real blocker here. What do you suggest to check next? Please advice. |
|
Back to top |
|
|
sMueggli Guru
Joined: 03 Sep 2022 Posts: 466
|
Posted: Thu Oct 24, 2024 9:02 am Post subject: |
|
|
Please show |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31251 Location: here
|
Posted: Thu Oct 24, 2024 11:35 am Post subject: |
|
|
yookoala wrote: | I've run the and I do see "sse", "sse2", "ssse3", "sse4_1" and even "sse4_2" support. So this is probably not the real blocker here. What do you suggest to check next? Please advice. |
If your cpu support sse2 you should enable these use flag using app-portage/cpuid2cpuflags. _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
yookoala n00b
Joined: 23 Oct 2024 Posts: 3
|
Posted: Fri Oct 25, 2024 10:39 am Post subject: |
|
|
I end up grep the /proc/cpuinfo "flag" line's content into /etc/portage/package.use/my-cpu-flags behind "*/* cpu_flags_x86: ".
Then the installation proceeds.
Thank you all for the help. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 22560
|
Posted: Fri Oct 25, 2024 11:44 am Post subject: |
|
|
I think that is the wrong solution. It may solve this particular problem, but in general there is no guarantee that the kernel names shown in /proc/cpuinfo are all CPU_FLAGS_X86 values. Why did you do that instead of using the tool that was suggested to you? |
|
Back to top |
|
|
|