[cfe-users] Adding linker flag `-save-temps` resolves the clang-8 error: "unable to make temporary file"

Fāng-ruì Sòng via cfe-users cfe-users at lists.llvm.org
Thu Aug 13 10:16:27 PDT 2020


On Thu, Aug 13, 2020 at 8:59 AM David Blaikie <dblaikie at gmail.com> wrote:
>
> On Thu, Aug 13, 2020 at 2:59 AM Danijel DOMAZET
> <p-danijel.domazet at devialet.com> wrote:
> >
> > Thanks David.
> > Why do you think this could be about current dir?
> > Isn't it about TMP (or TEMP or TMPDIR) environment variables?

Neither the driver option -save-temps nor the linker option
--save-temps (driver option -Wl,--save-temps) respects
TMP/TEMP/TMPDIR.
The temporary files are saved relative to the current working
directory, which can be changed via -working-directory=

> Because I ran it locally, and observed that that's where the files
> were written to.
>
> >
> > Thanks,
> > Danijel Domazet
> >
> >
> > On Thu, Aug 13, 2020 at 12:11 AM David Blaikie <dblaikie at gmail.com> wrote:
> >>
> >> Looks like it writes the files to the current directory - do you have
> >> permission to access the current directory?
> >>
> >> On Wed, Aug 12, 2020 at 6:28 AM Danijel DOMAZET via cfe-users
> >> <cfe-users at lists.llvm.org> wrote:
> >> >
> >> > Hi clang users,
> >> > I am using Windows10 + Cygwin + Eclipse +  LLVM toolchain to build a C/C++
> >> > project.
> >> >
> >> > The files compile fine, but linking with `clang++` fails with multiple
> >> > `error: unable to make temporary file: No such file or directory`.
> >> >
> >> >     clang++ -o test "source1.bc" "source2.bc" "source3.bc"
> >> >     clang-8: error: unable to make temporary file: No such file or directory
> >> >     clang-8: error: unable to make temporary file: No such file or directory
> >> >     clang-8: error: unable to make temporary file: No such file or directory
> >> >
> >> > Linker generates one error per each object file.
> >> >
> >> > However, when I add the `-save-temps` option to linker, it works OK.
> >> >
> >> > I am launching Eclipse.exe from within Cygwin. I have tried to set TMP,
> >> > TEMP to /temp, /temp/, /cygdrive/c/temp, etc, but nothing worked.
> >> >
> >> > What could be the problem?
> >> >
> >> > Thanks,
> >> > Danijel Domazet
> >> >
> >> >
> >> >
> >> > - Confidential -
> >> > _______________________________________________
> >> > cfe-users mailing list
> >> > cfe-users at lists.llvm.org
> >> > https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users
> >
> >
> > - Confidential -



-- 
宋方睿


More information about the cfe-users mailing list