Tcl Source Code

View Ticket
Login
Ticket UUID: 0bcc43fa778517c48aaedc1f0f0dcbad97e2efa7
Title: "make install" of tcl-8.7 trunk fails with fatal error
Type: Patch Version: 8.7 trunk
Submitter: anonymous Created on: 2018-12-23 22:32:20
Subsystem: 53. Configuration and Build Tools Assigned To: nobody
Priority: 5 Medium Severity: Important
Status: Closed Last Modified: 2018-12-28 20:31:23
Resolution: Fixed Closed By: sebres
    Closed on: 2018-12-28 20:31:23
Description:

While building the latest tcl 8.7 trunk on Windows 7 in a MSYS shell, "make install" fails with an error that the $PREFIX/include directory is missing.

scottyw@workshoppc MINGW32 /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/tcl-trunk/build-win
$ make install
Making directory /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/lib
Making directory /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/bin
Making directory /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/lib/dde1.4
Making directory /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/lib/reg1.3
Installing tcl90.dll to /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/bin/
Installing zlib1.dll to /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/bin/
Installing tclsh90.exe to /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/bin/
Installing tclConfig.sh to /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/lib/
Installing libtcl90.a to /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/lib/
Installing libtclstub90.a to /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/lib/
Installing tcldde14.dll
Installing libtcldde14.a
Installing tclreg13.dll
Installing libtclreg13.a
Making directory /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/include
/bin/sh: line 4: /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/local-win/include: No such file or directory
make: *** [Makefile:829: install-headers] Error 127

scottyw@workshoppc MINGW32 /c/Users/scottyw/Desktop/src/tcltk/core.tcl.tk/tk-rgbmask-fix/tcl-trunk/build-win
$

The failure is in the "install-headers" target. The mkdir command is missing and there is an INSTALL_DATA_DIR variable instead:

install-headers:
	@for i in "$(INCLUDE_INSTALL_DIR)"; \
	    do \
	    if [ ! -d "$$i" ] ; then \
		echo "Making directory $$i"; \
		$(INSTALL_DATA_DIR) "$$i"; \
		else true; \
		fi; \
	    done;
	@echo "Installing header files to $(INCLUDE_INSTALL_DIR)/";

I applied the following change to win/Makefile.in and the problem was fixed. I was able to install tcl:

Index: win/Makefile.in
==================================================================
--- win/Makefile.in
+++ win/Makefile.in
@@ -828,11 +828,11 @@
 install-headers:
 	@for i in "$(INCLUDE_INSTALL_DIR)"; \
 	    do \
 	    if [ ! -d "$$i" ] ; then \
 		echo "Making directory $$i"; \
-		$(INSTALL_DATA_DIR) "$$i"; \
+		$(MKDIR) "$$i"; \
 		else true; \
 		fi; \
 	    done;
 	@echo "Installing header files to $(INCLUDE_INSTALL_DIR)/";
 	@for i in $(GENERIC_DIR)/tcl.h $(GENERIC_DIR)/tclDecls.h \

User Comments: sebres added on 2018-12-28 20:31:23:
Fixed for both (8.7/9.0).
Thank you, Scott.

Attachments: