View previous topic :: View next topic |
Author |
Message |
burningserenity n00b
Joined: 18 Jul 2022 Posts: 65
|
Posted: Fri Sep 02, 2022 1:17 pm Post subject: Unable to Compile librsvg (seems to be rustc) |
|
|
Hello again forum.
I am now unable to emerge the librsvg package due to rustc not being able to find the "std" crate.
here is my build log
here is the output of emerge --info
here is the output of emerge -pqv
Any idea why the Rust compiler can't find Rust libraries? |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21724
|
Posted: Fri Sep 02, 2022 3:30 pm Post subject: |
|
|
You enabled 32-bit librsvg. Do you need 32-bit support for this package? If yes, what is the output of emerge --pretend --verbose gnome-base/librsvg virtual/rust dev-lang/rust-bin? If no, you could work around this by disabling 32-bit support, so that you do not need a 32-bit rust compiler. As I read the ebuild, Portage should have handled this correctly even with 32-bit enabled. |
|
Back to top |
|
|
burningserenity n00b
Joined: 18 Jul 2022 Posts: 65
|
Posted: Fri Sep 02, 2022 3:49 pm Post subject: |
|
|
How do I disable 32 bit support for the package? I tried changing my use flags, but that didn't work.
I don't understand why this is happening now and not when I first installed the package. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54317 Location: 56N 3W
|
Posted: Fri Sep 02, 2022 5:45 pm Post subject: |
|
|
burningserenity,
From your build log you have Code: | USE: abi_x86_32 abi_x86_64 | whicd says to build both a 32 bit and 64 bit version.
Your emerge --info contains which says I only want 64 bit versions unless I ask on a package by package basis.
That hints that somewhere in /etc/portage you have set abi_x86_32 or ABI_X86="32"
Try Code: | grep --i abi -R /etc/portage | if you get any hits, post the output.
Hmm ... steam-overlay, wine they all want 32 bit code. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
burningserenity n00b
Joined: 18 Jul 2022 Posts: 65
|
Posted: Fri Sep 02, 2022 7:26 pm Post subject: |
|
|
Code: | /etc/portage/package.use/21sdl1:>=gnome-base/librsvg-2.54.5 abi_x86_32 |
Found it. I need this, though, so I'll try the other thing you mentioned. |
|
Back to top |
|
|
burningserenity n00b
Joined: 18 Jul 2022 Posts: 65
|
Posted: Fri Sep 02, 2022 7:30 pm Post subject: |
|
|
Okay, added 32-bit support to Rust. That fixes it. Thanks for helping this newbie out. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21724
|
Posted: Fri Sep 02, 2022 9:59 pm Post subject: |
|
|
What exactly did you change? As I noted earlier, I would have expected Portage to have forced you to do the right thing before beginning, so it is strange to me that you managed to start a configuration that did not work. |
|
Back to top |
|
|
burningserenity n00b
Joined: 18 Jul 2022 Posts: 65
|
Posted: Fri Sep 02, 2022 11:36 pm Post subject: |
|
|
I ran Code: | emerge gnome-base/librsvg virtual/rust dev-lang/rust-bin --autounmask-write | and it enabled 32 bit use flags for rust and rust-bin. |
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 21724
|
Posted: Sat Sep 03, 2022 1:00 am Post subject: |
|
|
- Next time, please show what was changed, not what command generated the changes for you. This is why I used the phrasing What exactly did you change? If I ran the command you showed, it would make no changes, because my package.use settings are already consistent. If you instead showed what you changed, there would be no question what was updated, and future readers with the same problem could apply exactly your solution.
- Did you mean to add librsvg and rust to your world file?
- How did that command do anything? If there were changes to be made by autounmask-write, then Portage should not have let you run the build that started this thread until those changes were made.
|
|
Back to top |
|
|
burningserenity n00b
Joined: 18 Jul 2022 Posts: 65
|
Posted: Sat Sep 03, 2022 3:22 am Post subject: |
|
|
Okay a little more explanation.
I ran the suggested grip command and saw some packages with 32 bit support, including a lot of packages for cross compiling to win32 that I wasn’t using, so I took them out. Next time, I’ll have the output of the grep command, and the contents of the package.use file I removed.
Then I noticed that the librsvg package had 32-bit support enabled for it, and that I needed it, so I ran the emerge —pretend command suggested that I should run if I needed 32-bit support, which showed that rust and rust-bin would get 32-bit use flags, so I ran autounmask-write to add those flags. After I did this, I was able to compile librsvg. |
|
Back to top |
|
|
|