diff --git a/compiler/extccomp.nim b/compiler/extccomp.nim index e6e35f462d..0e52e9217c 100644 --- a/compiler/extccomp.nim +++ b/compiler/extccomp.nim @@ -616,8 +616,12 @@ proc getCompileCFileCmd*(conf: ConfigRef; cfile: Cfile, includeCmd.add(join([CC[c].includeCmd, quoteShell(conf.projectPath.string)])) - let cf = if noAbsolutePaths(conf): AbsoluteFile extractFilename(cfile.cname.string) - else: cfile.cname + # Generated files live in nimcache, but external files are not copied there. + let cf = + if noAbsolutePaths(conf) and CfileFlag.External notin cfile.flags: + AbsoluteFile extractFilename(cfile.cname.string) + else: + cfile.cname let objfile = if cfile.obj.isEmpty: