[flac-dev] MSVC 2005/2008 can't compile libFLAC
lvqcl
lvqcl.mail at gmail.com
Mon Jan 16 21:19:14 UTC 2017
These versions of Visual Studio don't have stdint.h and
all [u]intNN_t types. But now these types are everywhere
in FLAC codebase.
An easy fix would be to move definitions of these types
from share/compat.h into FLAC/ordinals.h (see attached
patch).
But it may break some 3rd party programs that include
(directly or indirectly) this file and also have their
own typedefs for these types.
(Also, currently FLAC/ordinals.h contains some nonsense
like "typedef uint32_t __int32 FLAC__uint32;", but that's
not a real problem)
So, what to do?
1) include share/compat.h where needed (but it's too big,
and even indirectly includes <windows.h>).
2) create a new file compat_stdint.h or compat_inttypes.h
that has only necessary definitions and include it.
3) apply the attached patch and hope that it has the most
compatible definitions for these types.
4) drop MSVC 2005/2008 support.
5) revert some changes of integer types to [u]intNN_t.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ordinals_fix.patch
Type: application/octet-stream
Size: 1738 bytes
Desc: not available
URL: <http://lists.xiph.org/pipermail/flac-dev/attachments/20170117/7ab5fbaa/attachment.obj>
More information about the flac-dev
mailing list