Hi, I tried to compile fontconfig with MinGW and got the following errors:
fontconfig-2.3.2:
-----------------------
Making all in fc-cache
make[2]: Entering directory
`/c/tmp/projekte/civ/src/mingw/fontconfig-2.3.2/fc-cache''
/bin/sh ../libtool --mode=link gcc -g -O2 -o fc-cache.exe
fc-cache.o ../src/libfontconfig.la
gcc -g -O2 -o fc-cache.exe fc-cache.o ../src/.libs/libfontconfig.a
-L/mingw/lib /mingw/lib/libfreetype.a /mingw/lib/libexpat.dll.a
-Wl,--rpath -Wl,/mingw/lib -Wl,--rpath -Wl,/mingw/lib
fc-cache.o(.text+0x6e9): In function `main'':
c:/tmp/projekte/civ/src/mingw/fontconfig-2.3.2/fc-cache/fc-cache.c:309:
undefined reference to `sleep''
../src/.libs/libfontconfig.a(fccfg.o)(.text+0x20b3): In function
`FcConfigCreate'':
c:/tmp/projekte/civ/src/mingw/fontconfig-2.3.2/src/fccfg.c:88:
undefined reference to `GetTempPath''
../src/.libs/libfontconfig.a(fccfg.o)(.text+0x20d5):c:/tmp/projekte/civ/src/mingw/fontconfig-2.3.2/src/fccfg.c:95:
undefined reference to `GetTempPath''
collect2: ld returned 1 exit status
make[2]: *** [fc-cache.exe] Error 1
make[2]: Leaving directory
`/c/tmp/projekte/civ/src/mingw/fontconfig-2.3.2/fc-cache''
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/c/tmp/projekte/civ/src/mingw/fontconfig-2.3.2''
make: *** [all] Error 2
-------------
$ nm /mingw/lib/libcrtdll.a | grep sleep
00000000 I __imp___sleep
00000000 T __sleep
$ nm /mingw/lib/libmsvcrt.a | grep sleep
00000000 I __imp___sleep
00000000 T __sleep
$ nm /mingw/lib/libkernel32.a | grep GetTempPath
00000000 I __imp__GetTempPathW@8
00000000 T _GetTempPathW@8
00000000 I __imp__GetTempPathA@8
00000000 T _GetTempPathA@8
fontconfig-2.3.93:
------------------------
Making all in src
make[2]: Entering directory
`/c/tmp/projekte/civ/src/mingw/fontconfig-2.3.93/src''
if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I.
-I. -I.. -I/mingw/include/freetype2 -I/mingw/include -Wall
-Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -fno-strict-aliasing
-DFONTCONFIG_PATH=''"/mingw/etc/fonts"'' -I.. -I../src
-DPKGCACHEDIR=''"/mingw/var/cache/fontconfig"'' -g
-O2 -MT fccache.lo
-MD -MP -MF ".deps/fccache.Tpo" -c -o fccache.lo fccache.c; \
then mv -f ".deps/fccache.Tpo" ".deps/fccache.Plo"; else rm
-f
".deps/fccache.Tpo"; exit 1; fi
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/mingw/include/freetype2
-I/mingw/include -Wall -Wpointer-arith -Wstrict-prototypes
-Wmissing-prototypes -Wmissing-declarations -Wnested-externs
-fno-strict-aliasing -DFONTCONFIG_PATH=\"/mingw/etc/fonts\" -I..
-I../src -DPKGCACHEDIR=\"/mingw/var/cache/fontconfig\" -g -O2 -MT
fccache.lo -MD -MP -MF .deps/fccache.Tpo -c fccache.c -o fccache.o
In file included from c:/programme/gnuwin32/mingw/include/fcntl.h:20,
from fccache.c:26:
c:/programme/gnuwin32/mingw/include/io.h:150: warning: no previous
prototype for ''lseek64''
In file included from fccache.c:28:
c:/programme/gnuwin32/mingw/include/string.h:97: warning: no previous
prototype for ''strcasecmp''
c:/programme/gnuwin32/mingw/include/string.h:103: warning: no previous
prototype for ''strncasecmp''
fccache.c:29:22: sys/mman.h: No such file or directory
fccache.c:30:25: sys/utsname.h: No such file or directory
In file included from fcint.h:28,
from fccache.c:33:
c:/programme/gnuwin32/mingw/include/stdlib.h:314: warning: no previous
prototype for ''strtof''
c:/programme/gnuwin32/mingw/include/stdlib.h:326: warning: no previous
prototype for ''wcstof''
c:/programme/gnuwin32/mingw/include/stdlib.h:472: warning: no previous
prototype for ''llabs''
In file included from fcint.h:29,
from fccache.c:33:
c:/programme/gnuwin32/mingw/include/stdio.h:219: warning: no previous
prototype for ''vsnprintf''
c:/programme/gnuwin32/mingw/include/stdio.h:258: warning: no previous
prototype for ''getc''
c:/programme/gnuwin32/mingw/include/stdio.h:265: warning: no previous
prototype for ''putc''
c:/programme/gnuwin32/mingw/include/stdio.h:272: warning: no previous
prototype for ''getchar''
c:/programme/gnuwin32/mingw/include/stdio.h:279: warning: no previous
prototype for ''putchar''
c:/programme/gnuwin32/mingw/include/stdio.h:401: warning: no previous
prototype for ''fopen64''
c:/programme/gnuwin32/mingw/include/stdio.h:413: warning: no previous
prototype for ''ftello64''
c:/programme/gnuwin32/mingw/include/stdio.h:468: warning: no previous
prototype for ''vsnwprintf''
fccache.c: In function `FcCacheNextOffset'':
fccache.c:476: warning: implicit declaration of function `sysconf''
fccache.c:476: warning: nested extern declaration of `sysconf''
fccache.c:476: error: `_SC_PAGESIZE'' undeclared (first use in this
function)
fccache.c:476: error: (Each undeclared identifier is reported only once
fccache.c:476: error: for each function it appears in.)
fccache.c: In function `FcDirCacheConsume'':
fccache.c:974: warning: implicit declaration of function `mmap''
fccache.c:974: warning: nested extern declaration of `mmap''
fccache.c:975: error: `PROT_READ'' undeclared (first use in this
function)
fccache.c:975: error: `MAP_SHARED'' undeclared (first use in this
function)
fccache.c:975: warning: assignment makes pointer from integer without a cast
fccache.c:976: error: `MAP_FAILED'' undeclared (first use in this
function)
fccache.c: In function `FcDirCacheProduce'':
fccache.c:996: warning: implicit declaration of function `rand_r''
fccache.c:996: warning: nested extern declaration of `rand_r''
fccache.c: In function `FcCacheMachineSignature'':
fccache.c:1229: warning: nested extern declaration of `sysconf''
fccache.c:1229: error: `_SC_PAGESIZE'' undeclared (first use in this
function)
make[2]: *** [fccache.lo] Error 1
make[2]: Leaving directory
`/c/tmp/projekte/civ/src/mingw/fontconfig-2.3.93/src''
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/c/tmp/projekte/civ/src/mingw/fontconfig-2.3.93''
make: *** [all] Error 2
"sys/mman.h" and "sys/utsname.h" do not exist in my MinGW
installation (5.0.0).
Compilation went fine with fontconfig 2.2.2.