/Be
appears to spit out a make file 1 snippet that contains the recipe to reproduce a given run of cl.exe
. It takes into account variables.
Check it out:
all: @cd D:\17.7.5\x64 @set INCLUDE= @set LIB= @set LIBPATH= @set CL=/nologo /utf-8 @set _CL_=-permissive -nologo @set LINK= D:\17.7.5\x64\cl.exe /nologo /BE /Be /?
As you can see it takes care of changing into the directory, setting the various recognized environment variables and copying stuff from those that were set (CL
and _CL_
in my case) and then invoking the same command line that I invoked.
Another useful switch appears to be /Bv
which shows the versions of the binaries involved like so:
cl.exe /nologo /Bv Compiler Passes: D:\17.7.5\x64\cl.exe: Version 19.37.32825.0 D:\17.7.5\x64\c1.dll: Version 19.37.32825.0 D:\17.7.5\x64\c1xx.dll: Version 19.37.32825.0 D:\17.7.5\x64\c2.dll: Version 19.37.32825.0 D:\17.7.5\x64\c1xx.dll: Version 19.37.32825.0 D:\17.7.5\x64\link.exe: Version 14.37.32825.0 D:\17.7.5\x64\mspdb140.dll: Version 14.37.32825.0 D:\17.7.5\x64\1033\clui.dll: Version 19.37.32825.0 cl : Command line error D8003 : missing source filename
// Oliver
- arguably NMake flavored [↩]