Pergunta

Um programa que eu uso está falhando quando usa tmpfile () Para arquivos grandes. O problema parece ser que não tenho permissão para criar arquivos grandes em /tmp, que essa função usa por padrão. Então, existe uma maneira, talvez com uma variável ambiental, que eu possa fazer com que o tmpfile () escreva em um local diferente?

Editar: o programa em questão é Sox, que usa C.

Foi útil?

Solução

Você pode usar a variável de ambiente tmpdir para dizer a tmpfile () onde criar arquivos:

Sintaxe SH:

TMPDIR=/path/to/whatever; export TMPDIR

Sintaxe CSH:

setenv TMPDIR /path/to/whatever

Outras dicas

Dada a informação em man tmpfile (3) você pode querer: #define P_tmpdir "/somedir"Claro, isso provavelmente não é muito confiável.

Você também pode definir sua variável ambiental, TMPDIR para algum local.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top