View previous topic :: View next topic |
Author |
Message |
tkzv Tux's lil' helper

Joined: 22 Aug 2014 Posts: 98
|
Posted: Thu Apr 17, 2025 10:03 am Post subject: [solved] mesa build fails: Permission denied: 'rustfmt' |
|
|
I wanted to update media-libs/mesa for the new video card (new Nvidia instead of r600 Radeon). The build keeps failing with an error like
Code: | [1750/2325] /var/tmp/portage/media-libs/mesa-25.0.4/temp/python3.12/bin/python3 ../mesa-25.0.4/src/nouveau/headers/lib_rs_gen.py --out-rs src/nouveau/headers/lib.rs src/nouveau/headers/nvh_classes_cl902d.rs src/nouveau/headers/nvh_classes_cl902d_mthd.rs src/nouveau/headers/nvh_classes_cl9039.rs src/nouveau/headers/nvh_classes_cl9039_mthd.rs src/nouveau/headers/nvh_classes_cl906f.rs src/nouveau/headers/nvh_classes_cl906f_mthd.rs src/nouveau/headers/nvh_classes_cl9097.rs src/nouveau/headers/nvh_classes_cl9097_mthd.rs src/nouveau/headers/nvh_classes_cl9097_tex.rs src/nouveau/headers/nvh_classes_cl90b5.rs src/nouveau/headers/nvh_classes_cl90b5_mthd.rs src/nouveau/headers/nvh_classes_cl90c0.rs src/nouveau/headers/nvh_classes_cl90c0_mthd.rs src/nouveau/headers/nvh_classes_cla040.rs src/nouveau/headers/nvh_classes_cla040_mthd.rs src/nouveau/headers/nvh_classes_cla0b5.rs src/nouveau/headers/nvh_classes_cla0b5_mthd.rs src/nouveau/headers/nvh_classes_cla097.rs src/nouveau/headers/nvh_classes_cla097_mthd.rs src/nouveau/headers/nvh_classes_cla097_tex.rs src/nouveau/headers/nvh_classes_cla097_sph.rs src/nouveau/headers/nvh_classes_cla140.rs src/nouveau/headers/nvh_classes_cla140_mthd.rs src/nouveau/headers/nvh_classes_cla297.rs src/nouveau/headers/nvh_classes_cla297_mthd.rs src/nouveau/headers/nvh_classes_cla297_tex.rs src/nouveau/headers/nvh_classes_clb097.rs src/nouveau/headers/nvh_classes_clb097_mthd.rs src/nouveau/headers/nvh_classes_clb097_tex.rs src/nouveau/headers/nvh_classes_clb0c0.rs src/nouveau/headers/nvh_classes_clb0c0_mthd.rs src/nouveau/headers/nvh_classes_clb0c0_qmd.rs src/nouveau/headers/nvh_classes_clb197.rs src/nouveau/headers/nvh_classes_clb197_mthd.rs src/nouveau/headers/nvh_classes_clb197_tex.rs src/nouveau/headers/nvh_classes_clb1c0.rs src/nouveau/headers/nvh_classes_clb1c0_mthd.rs src/nouveau/headers/nvh_classes_clb1c0_qmd.rs src/nouveau/headers/nvh_classes_clc097.rs src/nouveau/headers/nvh_classes_clc097_mthd.rs src/nouveau/headers/nvh_classes_clc097_tex.rs src/nouveau/headers/nvh_classes_clc1b5.rs src/nouveau/headers/nvh_classes_clc1b5_mthd.rs src/nouveau/headers/nvh_classes_cla0c0.rs src/nouveau/headers/nvh_classes_cla0c0_mthd.rs src/nouveau/headers/nvh_classes_cla0c0_qmd.rs src/nouveau/headers/nvh_classes_clc0c0.rs src/nouveau/headers/nvh_classes_clc0c0_mthd.rs src/nouveau/headers/nvh_classes_clc0c0_qmd.rs src/nouveau/headers/nvh_classes_clc397.rs src/nouveau/headers/nvh_classes_clc397_mthd.rs src/nouveau/headers/nvh_classes_clc397_tex.rs src/nouveau/headers/nvh_classes_clc3c0.rs src/nouveau/headers/nvh_classes_clc3c0_mthd.rs src/nouveau/headers/nvh_classes_clc3c0_qmd.rs src/nouveau/headers/nvh_classes_clc597.rs src/nouveau/headers/nvh_classes_clc597_mthd.rs src/nouveau/headers/nvh_classes_clc597_tex.rs src/nouveau/headers/nvh_classes_clc5c0.rs src/nouveau/headers/nvh_classes_clc5c0_mthd.rs src/nouveau/headers/nvh_classes_clc5c0_qmd.rs src/nouveau/headers/nvh_classes_clc697.rs src/nouveau/headers/nvh_classes_clc697_mthd.rs src/nouveau/headers/nvh_classes_clc697_tex.rs src/nouveau/headers/nvh_classes_clc6c0.rs src/nouveau/headers/nvh_classes_clc6c0_mthd.rs src/nouveau/headers/nvh_classes_clc6c0_qmd.rs src/nouveau/headers/nvh_classes_clc797.rs src/nouveau/headers/nvh_classes_clc797_mthd.rs src/nouveau/headers/nvh_classes_clc797_tex.rs src/nouveau/headers/nvh_classes_clc797_sph.rs src/nouveau/headers/nvh_classes_clc7c0.rs src/nouveau/headers/nvh_classes_clc7c0_mthd.rs src/nouveau/headers/nvh_classes_clc7c0_qmd.rs src/nouveau/headers/nvh_hwref_gm107_mmu.rs src/nouveau/headers/nvh_hwref_gp100_mmu.rs src/nouveau/headers/nvh_hwref_gh100_mmu.rs src/nouveau/headers/nvh_hwref_tu102_mmu.rs
FAILED: src/nouveau/headers/lib.rs
/var/tmp/portage/media-libs/mesa-25.0.4/temp/python3.12/bin/python3 ../mesa-25.0.4/src/nouveau/headers/lib_rs_gen.py --out-rs src/nouveau/headers/lib.rs src/nouveau/headers/nvh_classes_cl902d.rs src/nouveau/headers/nvh_classes_cl902d_mthd.rs src/nouveau/headers/nvh_classes_cl9039.rs src/nouveau/headers/nvh_classes_cl9039_mthd.rs src/nouveau/headers/nvh_classes_cl906f.rs src/nouveau/headers/nvh_classes_cl906f_mthd.rs src/nouveau/headers/nvh_classes_cl9097.rs src/nouveau/headers/nvh_classes_cl9097_mthd.rs src/nouveau/headers/nvh_classes_cl9097_tex.rs src/nouveau/headers/nvh_classes_cl90b5.rs src/nouveau/headers/nvh_classes_cl90b5_mthd.rs src/nouveau/headers/nvh_classes_cl90c0.rs src/nouveau/headers/nvh_classes_cl90c0_mthd.rs src/nouveau/headers/nvh_classes_cla040.rs src/nouveau/headers/nvh_classes_cla040_mthd.rs src/nouveau/headers/nvh_classes_cla0b5.rs src/nouveau/headers/nvh_classes_cla0b5_mthd.rs src/nouveau/headers/nvh_classes_cla097.rs src/nouveau/headers/nvh_classes_cla097_mthd.rs src/nouveau/headers/nvh_classes_cla097_tex.rs src/nouveau/headers/nvh_classes_cla097_sph.rs src/nouveau/headers/nvh_classes_cla140.rs src/nouveau/headers/nvh_classes_cla140_mthd.rs src/nouveau/headers/nvh_classes_cla297.rs src/nouveau/headers/nvh_classes_cla297_mthd.rs src/nouveau/headers/nvh_classes_cla297_tex.rs src/nouveau/headers/nvh_classes_clb097.rs src/nouveau/headers/nvh_classes_clb097_mthd.rs src/nouveau/headers/nvh_classes_clb097_tex.rs src/nouveau/headers/nvh_classes_clb0c0.rs src/nouveau/headers/nvh_classes_clb0c0_mthd.rs src/nouveau/headers/nvh_classes_clb0c0_qmd.rs src/nouveau/headers/nvh_classes_clb197.rs src/nouveau/headers/nvh_classes_clb197_mthd.rs src/nouveau/headers/nvh_classes_clb197_tex.rs src/nouveau/headers/nvh_classes_clb1c0.rs src/nouveau/headers/nvh_classes_clb1c0_mthd.rs src/nouveau/headers/nvh_classes_clb1c0_qmd.rs src/nouveau/headers/nvh_classes_clc097.rs src/nouveau/headers/nvh_classes_clc097_mthd.rs src/nouveau/headers/nvh_classes_clc097_tex.rs src/nouveau/headers/nvh_classes_clc1b5.rs src/nouveau/headers/nvh_classes_clc1b5_mthd.rs src/nouveau/headers/nvh_classes_cla0c0.rs src/nouveau/headers/nvh_classes_cla0c0_mthd.rs src/nouveau/headers/nvh_classes_cla0c0_qmd.rs src/nouveau/headers/nvh_classes_clc0c0.rs src/nouveau/headers/nvh_classes_clc0c0_mthd.rs src/nouveau/headers/nvh_classes_clc0c0_qmd.rs src/nouveau/headers/nvh_classes_clc397.rs src/nouveau/headers/nvh_classes_clc397_mthd.rs src/nouveau/headers/nvh_classes_clc397_tex.rs src/nouveau/headers/nvh_classes_clc3c0.rs src/nouveau/headers/nvh_classes_clc3c0_mthd.rs src/nouveau/headers/nvh_classes_clc3c0_qmd.rs src/nouveau/headers/nvh_classes_clc597.rs src/nouveau/headers/nvh_classes_clc597_mthd.rs src/nouveau/headers/nvh_classes_clc597_tex.rs src/nouveau/headers/nvh_classes_clc5c0.rs src/nouveau/headers/nvh_classes_clc5c0_mthd.rs src/nouveau/headers/nvh_classes_clc5c0_qmd.rs src/nouveau/headers/nvh_classes_clc697.rs src/nouveau/headers/nvh_classes_clc697_mthd.rs src/nouveau/headers/nvh_classes_clc697_tex.rs src/nouveau/headers/nvh_classes_clc6c0.rs src/nouveau/headers/nvh_classes_clc6c0_mthd.rs src/nouveau/headers/nvh_classes_clc6c0_qmd.rs src/nouveau/headers/nvh_classes_clc797.rs src/nouveau/headers/nvh_classes_clc797_mthd.rs src/nouveau/headers/nvh_classes_clc797_tex.rs src/nouveau/headers/nvh_classes_clc797_sph.rs src/nouveau/headers/nvh_classes_clc7c0.rs src/nouveau/headers/nvh_classes_clc7c0_mthd.rs src/nouveau/headers/nvh_classes_clc7c0_qmd.rs src/nouveau/headers/nvh_hwref_gm107_mmu.rs src/nouveau/headers/nvh_hwref_gp100_mmu.rs src/nouveau/headers/nvh_hwref_gh100_mmu.rs src/nouveau/headers/nvh_hwref_tu102_mmu.rs
Traceback (most recent call last):
File "/var/tmp/portage/media-libs/mesa-25.0.4/work/mesa-25.0.4-abi_x86_32.x86/../mesa-25.0.4/src/nouveau/headers/lib_rs_gen.py", line 113, in main
subprocess.run(['rustfmt', args.out_rs], check=True)
File "/usr/lib/python3.12/subprocess.py", line 548, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.12/subprocess.py", line 1026, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.12/subprocess.py", line 1955, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
PermissionError: [Errno 13] Permission denied: 'rustfmt'
|
I tried several versions of Rust and media-libs/mesa, the error remains. How do I compile it?
Build log for media-libs/mesa-25.0.4 and dev-lang/rust-1.84.1-r1: https://envs.sh/3r2.log
ANSWER: rebuild dev-lang/rust with USE='rustfmt'
Last edited by tkzv on Thu Apr 17, 2025 6:16 pm; edited 1 time in total |
|
Back to top |
|
 |
grknight Retired Dev

Joined: 20 Feb 2015 Posts: 2157
|
Posted: Thu Apr 17, 2025 12:27 pm Post subject: |
|
|
You may have a broken symlink. Try using eselect rust update to ensure the latest version is selected.
Also, look at what ls -l $(which rustfmt) says.
Edit: In addition, ensure that dev-lang/rust-1.84.1-r1 has the rustfmt USE enabled |
|
Back to top |
|
 |
tkzv Tux's lil' helper

Joined: 22 Aug 2014 Posts: 98
|
Posted: Thu Apr 17, 2025 6:14 pm Post subject: |
|
|
grknight wrote: | You may have a broken symlink. Try using eselect rust update to ensure the latest version is selected.
Also, look at what ls -l $(which rustfmt) says.
Edit: In addition, ensure that dev-lang/rust-1.84.1-r1 has the rustfmt USE enabled |
Thanks a lot! rustfmt was absent, USE flag was not set, and mesa ebuilds do not check the flag presence.
After I rebuilt Rust with this flag, everything compiled.
https://bugs.gentoo.org/953963 |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55242 Location: 56N 3W
|
Posted: Thu Apr 17, 2025 7:40 pm Post subject: |
|
|
tkzv,
Please file a bug for Quote: | mesa ebuilds do not check the flag presence |
_________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
tkzv Tux's lil' helper

Joined: 22 Aug 2014 Posts: 98
|
Posted: Thu Apr 17, 2025 9:37 pm Post subject: |
|
|
NeddySeagoon wrote: | tkzv,
Please file a bug for Quote: | mesa ebuilds do not check the flag presence |
|
I already did: https://bugs.gentoo.org/953963
Although, it's debatable, if the use of rustfmt is required at all. They may decide to remove it instead. |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|