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

compiler wrapper trying to create temporary files in /dev #2288

Open
mischief opened this issue Nov 16, 2024 · 1 comment
Open

compiler wrapper trying to create temporary files in /dev #2288

mischief opened this issue Nov 16, 2024 · 1 comment

Comments

@mischief
Copy link

hi,

without any additional setup or ceremony, i built HEAD with rustc/cargo 1.81.0 in gentoo and invoked sccache like the readme suggests: https://github.com/mozilla/sccache?tab=readme-ov-file#usage

mischief@beast:~/src/sccache $ cargo build --release
   Compiling libc v0.2.155
   Compiling proc-macro2 v1.0.75
   Compiling unicode-ident v1.0.12
...
    Finished `release` profile [optimized] target(s) in 3m 24s

i'm not a rust person, but i find it odd that sccache would attempt to make a temporary file in /dev/. a user program should never do this.

this occurred after more than 1 invocation of sccache with the same parameters. the first invocation had no error.

mischief@beast:~/src/sccache $ ./target/release/sccache cc -o /dev/null -c ~/code/c/fbufsize.c
sccache: encountered fatal error
sccache: error: Permission denied (os error 13) at path "/dev/.tmp48KCJX"
sccache: caused by: Permission denied (os error 13) at path "/dev/.tmp48KCJX"

fbufsize.c is nothing special, just a trivial program i had laying around.

#include <stdio.h>
#include <stdio_ext.h>

int main(void)
{
        setvbuf(stdout, NULL, _IONBF, 0);
        setvbuf(stderr, NULL, _IONBF, 0);
        printf("%ld\n", __fbufsize(stdout));
        printf("%ld\n", __fbufsize(stderr));
        return 0;
}
@Xuanwo
Copy link
Collaborator

Xuanwo commented Nov 16, 2024

./target/release/sccache cc -o /dev/null -c ~/code/c/fbufsize.c

Hi, what will happen if we change -o /dev/null?

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