View Ticket
Ticket Hash: a39f4ac2fa55a646c1eee2a6667564eb8a9f9e05
Title: could not build zlib in mingw
Status: Closed Type: Build Problem
Severity: Critical Priority: Immediate
Subsystem: Tcl Resolution: Fixed
Last Modified: 2015-03-30 23:54:47
Version Found In: 0.9.2
configure script of zlib 1.2.8 fails and says "Please use win32/Makefile.gcc instead." when $(uname -s) matches with MINGW* or mingw* by case statement of /bin/sh.<br /><br />And default Makefile which will be used in this case also says same warnng, but make does not return error. So kitcreator script guesses wrong.<br /><br />For example,&nbsp; I succeeded to build zlib by following.<br />(awk line resolves another problem. Because Makefile.gcc resets CC and RC by self.)<br /><br />&nbsp;&nbsp;&nbsp; case $(uname -s 2&gt; /dev/null) in<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; MINGW* | mingw*)<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # use win32/Makefile.gcc instead.<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo "Running: awk '{if($1~/^[RC]C$/&amp;&amp;$2~/^=/)$2="?"$2;print}' win32/Makefile.gcc &gt; Makefile"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; awk '{if($1~/^[RC]C$/&amp;&amp;$2~/^=/)$2="?"$2;print}' win32/Makefile.gcc &gt; Makefile<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo "Running: ${MAKE:-make}"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ${MAKE:-make} || exit 1<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo "Running: BINARY_PATH=${INSTDIR}/bin INCLUDE_PATH=${INSTDIR}/include LIBRARY_PATH=${INSTDIR}/lib ${MAKE:-make} install"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; BINARY_PATH=${INSTDIR}/bin INCLUDE_PATH=${INSTDIR}/include LIBRARY_PATH=${INSTDIR}/lib ${MAKE:-make} install<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ;;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; *)<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # If we are building for KitDLL, compile with '-fPIC'<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if [ "${KITTARGET}" = "kitdll" ]; then<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; CFLAGS="${CFLAGS} -fPIC"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; export CFLAGS<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; fi<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # We don't pass CONFIGUREEXTRA here, since this isn't a GNU autoconf<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # script and will puke<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo "Running: ./configure --prefix=\"${INSTDIR}\" --libdir=\"${INSTDIR}/lib\" --static"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ./configure --prefix="${INSTDIR}" --libdir="${INSTDIR}/lib" --static<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo "Running: ${MAKE:-make}"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ${MAKE:-make} || exit 1<br /><br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; echo "Running: ${MAKE:-make} install"<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ${MAKE:-make} install<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ;;<br />&nbsp;&nbsp;&nbsp; esac
User Comments:
mistachkin added on 2015-03-26 02:02:04: (text/x-fossil-plain)
There is an issue with building zlib using MinGW.  Using a modified version of
your patch, I am able to build zlib.  However, the "awk" line caused problems
for me here (i.e. complaints about being unable to locate the "cc" command).

mistachkin added on 2015-03-26 04:41:20: (text/x-fossil-plain)
This issue should now be fixed on the 'winZlib128' branch.

mistachkin added on 2015-03-30 23:54:47: (text/x-fossil-plain)
Fixed on trunk via check-in [9ad5a7514f35a5a2].