View Ticket
Ticket Hash: cb7ed6affe0b2ee93f528838d23b0245b9a30f4f
Title: MinGW tclvfs error: dereferencing pointer to incomplete type
Status: Closed Type: Build Problem
Severity: Minor Priority: Immediate
Subsystem: Tcl Resolution: Fixed
Last Modified: 2012-05-06 23:52:34
Version Found In: trunk
Description:
Using MSYS, I cloned kitcreator trunk, ran build/pre.sh, and ran "kitcreator fossil_trunk".  I received the following output.

<pre>
$ ./kitcreator fossil_trunk
Building tcl ... done.
Building tclvfs ... failed.
Building zlib ... done.
Building tk ... failed.
Building itcl ... done.
Building mk4tcl ... done.
Building kitsh ... failed.
Failed to build: tclvfs tk kitsh
WARNING: Build is likely incomplete or failed.
</pre>

The contents of tclvfs/build.log follow:

<pre>
--2012-04-18 21:28:47--  http://sourceforge.net/projects/tclvfs/files/tclvfs/tclvfs-20080503/tclvfs-20080503.tar.gz/download
Resolving sourceforge.net... 216.34.181.60
Connecting to sourceforge.net|216.34.181.60|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://downloads.sourceforge.net/project/tclvfs/tclvfs/tclvfs-20080503/tclvfs-20080503.tar.gz?r=&ts=1334809736&use_mirror=softlayer [following]
--2012-04-18 21:28:48--  http://downloads.sourceforge.net/project/tclvfs/tclvfs/tclvfs-20080503/tclvfs-20080503.tar.gz?r=&ts=1334809736&use_mirror=softlayer
Resolving downloads.sourceforge.net... 216.34.181.59
Connecting to downloads.sourceforge.net|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://softlayer.dl.sourceforge.net/project/tclvfs/tclvfs/tclvfs-20080503/tclvfs-20080503.tar.gz [following]
--2012-04-18 21:28:48--  http://softlayer.dl.sourceforge.net/project/tclvfs/tclvfs/tclvfs-20080503/tclvfs-20080503.tar.gz
Resolving softlayer.dl.sourceforge.net... 74.86.229.28
Connecting to softlayer.dl.sourceforge.net|74.86.229.28|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 258723 (253K) [application/x-gzip]
Saving to: “src/tclvfs-20080503.tar.gz.tmp”

     0K .......... .......... .......... .......... .......... 19%  242K 1s
    50K .......... .......... .......... .......... .......... 39%  815K 0s
   100K .......... .......... .......... .......... .......... 59%  690K 0s
   150K .......... .......... .......... .......... .......... 79%  948K 0s
   200K .......... .......... .......... .......... .......... 98% 2.78M 0s
   250K ..                                                    100% 2.74M=0.4s

2012-04-18 21:28:49 (614 KB/s) - “src/tclvfs-20080503.tar.gz.tmp” saved [258723/258723]

Applying: /home/Ben/local/src/kitcreator/tclvfs/patches/all/tclvfs-20080503-includestat.diff
patching file generic/vfs.c
Applying: /home/Ben/local/src/kitcreator/tclvfs/patches/all/tclvfs-20080503-zipvfs.diff
patching file library/zipvfs.tcl
Applying: /home/Ben/local/src/kitcreator/tclvfs/patches/8.6/tclvfs-20080503-compilewithcvs.diff
patching file generic/vfs.c
Hunk #1 succeeded at 1659 (offset 3 lines).
Applying: /home/Ben/local/src/kitcreator/tclvfs/patches/8.6/tclvfs-20080503-supportnativezlib.diff
patching file library/vfslib.tcl
Running: ./configure --disable-shared
--prefix="/home/Ben/local/src/kitcreator/tclvfs/inst"
--exec-prefix="/home/Ben/local/src/kitcreator/tclvfs/inst"
--with-tcl="/home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/win" 
checking for correct TEA configuration... ok (TEA 3.5)
checking for cygpath... echo
checking for Tcl configuration... found /home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/win/tclConfig.sh
checking for existence of /home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/win/tclConfig.sh... loading
checking for gcc... gcc
checking for C compiler default output file name... a.exe
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... .exe
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... gcc -E
checking for a BSD-compatible install... /bin/install -c
checking whether make sets $(MAKE)... yes
checking for ranlib... ranlib
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking if the compiler understands -pipe... yes
checking whether byte ordering is bigendian... no
checking for Tcl private include files... Using srcdir found in tclConfig.sh: /home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk
checking for building with threads... yes (default)
checking how to build libraries... static
checking if 64bit support is requested... no
checking if 64bit Sparc VIS support is requested... no
checking if Windows/CE build is requested... no
checking system version... windows
checking for dlopen in -ldl... no
checking for ar... ar
checking for required early compiler flags... none
checking for 64-bit integer type... long long
checking for struct dirent64... no
checking for struct stat64... no
checking for open64... no
checking for lseek64... yes
checking for off64_t... no
checking for build with symbols... no
checking for tclsh... /home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/win/tclsh86.exe
configure: creating ./config.status
config.status: creating Makefile
config.status: creating pkgIndex.tcl
Running: make
gcc -pipe -DPACKAGE_NAME=\"vfs\" -DPACKAGE_TARNAME=\"vfs\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"vfs\ 1.3\" -DPACKAGE_BUGREPORT=\"\"
-DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DBUILD_vfs=1 -DTCL_THREADS=1 -DSTATIC_BUILD=1 -DTCL_WIDE_INT_TYPE=long\ long
-DHAVE_LSEEK64=1   -I"/home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/generic"
-I"/home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/generic" -I"/home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/win"
-I/home/Ben/local/src/kitcreator/tcl/build/tclfossil_trunk/win -O2 -fomit-frame-pointer -Wall -Wno-implicit-int -c `echo vfs.c` -o vfs.o
vfs.c: In function 'VfsStat':
vfs.c:1111:12: error: dereferencing pointer to incomplete type
vfs.c:1125:13: error: dereferencing pointer to incomplete type
vfs.c:1132:13: error: dereferencing pointer to incomplete type
vfs.c:1139:13: error: dereferencing pointer to incomplete type
vfs.c:1146:13: error: dereferencing pointer to incomplete type
vfs.c:1153:13: error: dereferencing pointer to incomplete type
vfs.c:1160:13: error: dereferencing pointer to incomplete type
vfs.c:1167:13: error: dereferencing pointer to incomplete type
vfs.c:1174:13: error: dereferencing pointer to incomplete type
vfs.c:1181:13: error: dereferencing pointer to incomplete type
vfs.c:1188:13: error: dereferencing pointer to incomplete type
vfs.c:1193:10: error: dereferencing pointer to incomplete type
vfs.c:1195:10: error: dereferencing pointer to incomplete type
vfs.c:1198:10: error: dereferencing pointer to incomplete type
make: *** [vfs.o] Error 1
</pre>

<hr /><i>rkeene added on 2012-05-06 20:46:12 UTC:</i><br />
This is a bug in Tcl Trunk.  I'll work on identifying the change that broke it and create a bug report for Tcl.

<hr /><i>rkeene added on 2012-05-06 21:35:29 UTC:</i><br />
Bug filed with Tcl:  <a href="https://sourceforge.net/tracker/?func=detail&aid=3524165&group_id=10894&atid=110894">3524165</a>

<hr /><i>rkeene added on 2012-05-06 22:16:05 UTC:</i><br />
Fixed in [8b02cd8c92]

<hr /><i>anonymous claiming to be bencollver added on 2012-05-06 23:52:34 UTC:</i><br />
Thanks, that fix worked for me.