- labels: --> Scintilla, SciTE, lexilla, win32, build
When building Scintilla on Windows using cd win32 & nmake -f scintilla.mak the vc140.pdb gets created in win32 rather then win32\obj alongside all the other *.obj files. This means that nmake -f scintilla.mak clean does not remove it. I propose to create the vc140.pdb in win32\obj instead.
The reason is that the -Zi flag ("The /Zi option produces a separate PDB file that contains all the symbolic debugging information for use with the debugger.") is missing an accompanying -Fd (/Fd gives the program database file name) to set its output path.
Fix:
C:\opt\scintilla-code\win32>hg diff
diff -r 5c6325ac2b68 win32/scintilla.mak
--- a/win32/scintilla.mak Mon Sep 28 08:39:32 2026 +1000
+++ b/win32/scintilla.mak Wed Oct 07 13:06:40 2026 +0200
@@ -41,7 +41,7 @@
!ENDIF
CRTFLAGS=$(ADD_DEFINE)
-CXXFLAGS=-Zi -TP -MP -W4 -EHsc -std:c++17 -utf-8 $(CRTFLAGS)
+CXXFLAGS=-Zi -Fd$(DIR_O)\ -TP -MP -W4 -EHsc -std:c++17 -utf-8 $(CRTFLAGS)
CXXDEBUG=-Od -MTd -DDEBUG
CXXNDEBUG=-O2 -MT -DNDEBUG -GL
NAME=-Fo