Bug 7974 - ccache 3.1.4 fails to build on MinGW32
Summary: ccache 3.1.4 fails to build on MinGW32
Status: CLOSED WONTFIX
Alias: None
Product: ccache
Classification: Unclassified
Component: ccache (show other bugs)
Version: 3.1.4
Hardware: x64 Windows 7
: P5 normal
Target Milestone: 3.2
Assignee: Joel Rosdahl
QA Contact: Joel Rosdahl
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-24 16:29 UTC by Ken Sharp
Modified: 2012-08-11 08:26 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ken Sharp 2011-02-24 16:29:39 UTC
There are a lot of errors when trying to compile ccache 3.1.4 under MinGW32

$ make
gcc -g -O2 -Wall -W  -o ccache.exe main.o ccache.o mdfour.o hash.o execute.o uti
l.o args.o stats.o version.o cleanup.o snprintf.o unify.o manifest.o hashtable.o
 hashtable_itr.o murmurhashneutral2.o hashutil.o getopt_long.o exitfn.o lockfile
.o counters.o language.o compopt.o -Lzlib  -lm -lz
ccache.o: In function `parse_sloppiness':
C:/MinGW/msys/1.0/home/ccache-3.1.4/ccache.c:1750: undefined reference to `strto
k_r'
ccache.o: In function `calculate_common_hash':
C:/MinGW/msys/1.0/home/ccache-3.1.4/ccache.c:861: undefined reference to `strtok
_r'
execute.o: In function `find_executable_in_path':
C:/MinGW/msys/1.0/home/ccache-3.1.4/execute.c:244: undefined reference to `strto
k_r'
C:/MinGW/msys/1.0/home/ccache-3.1.4/execute.c:246: undefined reference to `strto
k_r'
args.o: In function `args_init_from_string':
C:/MinGW/msys/1.0/home/ccache-3.1.4/args.c:45: undefined reference to `strtok_r'

hashutil.o: In function `hash_command_output':
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:238: undefined reference to `pipe
'
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:241: undefined reference to `fork
'
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:266: undefined reference to `wait
pid'
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:270: undefined reference to `WIFE
XITED'
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:271: undefined reference to `WEXI
TSTATUS'
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:270: undefined reference to `WEXI
TSTATUS'
hashutil.o: In function `hash_multicommand_output':
C:/MinGW/msys/1.0/home/ccache-3.1.4/hashutil.c:288: undefined reference to `strt
ok_r'
collect2: ld returned 1 exit status
make: *** [ccache.exe] Error 1
Comment 1 Joel Rosdahl 2011-02-27 02:05:08 UTC
I don't know much about MinGW, but according to <http://lists-archives.org/mingw-users/18786-fork-waitpid-and-setpid.html>, the right way to solve it is to port the code to Windows APIs.

Fortunately, Ramiro Polla has already made it possible to build ccache natively in Windows, but there hasn't been any official Windows build yet. I'll ask him about the status.
Comment 2 Joel Rosdahl 2011-03-03 21:05:03 UTC
The current master branch (which will become ccache 3.2 at some yet unknown time) mostly works on Windows right now.
Comment 3 Joel Rosdahl 2012-08-11 08:26:06 UTC
Closing this as WONTFIX since Windows builds won't be supported for ccache 3.1.