<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font size="-1"><font face="Helvetica, Arial, sans-serif">Hello,<br>
<br>
I've read <a
href="https://lists.freedesktop.org/archives/fontconfig/2017-December/006107.html"><a class="moz-txt-link-freetext" href="https://lists.freedesktop.org/archives/fontconfig/2017-December/006107.html">https://lists.freedesktop.org/archives/fontconfig/2017-December/006107.html</a></a>,
but my issue is different.<br>
<br>
I'm compiling Fontconfig with the help of forked script of <a
href="https://github.com/rdp/ffmpeg-windows-build-helpers"><a class="moz-txt-link-freetext" href="https://github.com/rdp/ffmpeg-windows-build-helpers">https://github.com/rdp/ffmpeg-windows-build-helpers</a></a>
(which uses Cygwin, MingW, GCC) to build FFmpeg in the end.<br>
I've just released another FFmpeg build, but still with
Fontconfig 2.12.6, because I got a compilation error with
v2.12.91.<br>
<br>
Let me first say that I only compile what's really necessary:<br>
<br>
</font></font>
<div
style="font-size:10.0pt;font-family:Monospace;background:silver;">build_fontconfig()
{<br>
download_and_unpack_file
<a class="moz-txt-link-freetext" href="https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.91.tar.bz2">https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.91.tar.bz2</a><br>
cd fontconfig-2.12.91<br>
if [[ ! -f Makefile.in.bak ]]; then # Library only.<br>
sed -i.bak
"/^SUBDIRS/s/fc.*/src/;464,465d;/^install-data-am/s/:.*/:
install-pkgconfigDATA/;/\tinstall-xmlDATA$/d" Makefile.in<br>
fi<br>
export UUID_CFLAGS="-I/usr/include"<br>
export UUID_LIBS="-luuid" # 'configure' somehow only looks at
'$PKG_CONFIG --exists --print-errors "uuid"'.<br>
generic_configure "--enable-iconv --enable-libxml2
--disable-docs --with-libiconv" # Use Libxml2 instead of Expat.<br>
do_make_and_make_install<br>
unset UUID_CFLAGS<br>
unset UUID_LIBS<br>
cd ..<br>
} # freetype, libxml >= 2.6, itstool (cygwin), [iconv, dlfcn]</div>
<font size="-1"><font face="Helvetica, Arial, sans-serif"><br>
- I'm leaving out all the '<i>fc-*</i>'-dirs and I'm only
compiling <span
style="font-size:10.0pt;font-family:Monospace;background:silver;">SUBDIRS
= fontconfig src</span>. This way I'm not even getting the '<i>fc-cache.exe</i>'-error,
but I might if I would build normally, I don't know.<br>
- I had to install Cygwin's "itstool". Apparently that has
become a prerequisite with this latest version.<br>
- Another prerequisite seems to be libuuid. Cygwin already
installed it for me, but Fontconfig's '<i>configure</i>' doesn't
search for it.<br>
<br>
Then the compilation error, beginning at '<i>src/fcatomic.c</i>':<br>
<br>
</font></font>
<div
style="font-size:10.0pt;font-family:Monospace;background:silver;">[...]<br>
CC fcatomic.lo<br>
In file included from /usr/include/errno.h:9:0,<br>
from fcint.h:39,<br>
from fcatomic.c:50:<br>
/usr/include/sys/errno.h:14:0: warning: "errno" redefined<br>
#define errno (*__errno())<br>
<br>
In file included from
/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/lib/gcc/i686-w64-mingw32/7.2.0/include/stddef.h:1:0,<br>
from /usr/include/stdlib.h:16,<br>
from fcint.h:34,<br>
from fcatomic.c:50:<br>
/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/i686-w64-mingw32/include/stddef.h:19:0:
note: this is the location of the previous definition<br>
#define errno (*_errno())<br>
<br>
In file included from fcint.h:37:0,<br>
from fcatomic.c:50:<br>
/usr/include/ctype.h:40:12: error: expected ';', ',' or ')' before
numeric constant<br>
#define _X 0100<br>
^<br>
In file included from fcatomic.c:58:0:<br>
/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/i686-w64-mingw32/include/direct.h:57:17:
error: conflicting types for 'getcwd'<br>
char *__cdecl getcwd(char *_DstBuf,int _SizeInBytes)
__MINGW_ATTRIB_DEPRECATED_MSVC2005;<br>
^~~~~~<br>
In file included from /usr/include/stdlib.h:11:0,<br>
from fcint.h:34,<br>
from fcatomic.c:50:<br>
/usr/include/sys/unistd.h:96:16: note: previous declaration of
'getcwd' was here<br>
char * _EXFUN(getcwd, (char *__buf, size_t __size ));<br>
^<br>
/usr/include/_ansi.h:65:30: note: in definition of macro '_EXFUN'<br>
#define _EXFUN(name, proto) name proto<br>
^~~~<br>
In file included from fcatomic.c:58:0:<br>
/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/cross_compilers/mingw-w64-i686/i686-w64-mingw32/include/direct.h:59:15:
error: conflicting types for 'mkdir'<br>
int __cdecl mkdir(const char *_Path)
__MINGW_ATTRIB_DEPRECATED_MSVC2005;<br>
^~~~~<br>
In file included from /usr/include/stdlib.h:11:0,<br>
from fcint.h:34,<br>
from fcatomic.c:50:<br>
/usr/include/sys/stat.h:150:12: note: previous declaration of
'mkdir' was here<br>
int _EXFUN(mkdir,( const char *_path, mode_t __mode ));<br>
^<br>
/usr/include/_ansi.h:65:30: note: in definition of macro '_EXFUN'<br>
#define _EXFUN(name, proto) name proto<br>
^~~~<br>
make[3]: *** [Makefile:667: fcatomic.lo] Error 1<br>
make[3]: Leaving directory
'/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/win32/fontconfig-2.12.91/src'<br>
make[2]: *** [Makefile:531: all] Error 2<br>
make[2]: Leaving directory
'/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/win32/fontconfig-2.12.91/src'<br>
make[1]: *** [Makefile:605: all-recursive] Error 1<br>
make[1]: Leaving directory
'/cygdrive/m/ffmpeg-windows-build-helpers-master/native_build/windows/ffmpeg_local_builds/sandbox/win32/fontconfig-2.12.91'<br>
make: *** [Makefile:489: all] Error 2</div>
<font size="-1"><font face="Helvetica, Arial, sans-serif"><br>
And that's the reason why I stick to v2.12.6 for the moment. I
hope this helps.<br>
<br>
-- Reino<br>
</font></font>
</body>
</html>