On Wed, 12 Jul 2017 08:17:46 -0000
Samuel Rakitničan <[email protected]> wrote:
> > Argument 4 is the "n". The problem is with the definition of
> > "PRIo64. There was a recent commit attempting to fix that, but it
> > probably needs some adjustment to handle your case. Check out the
> > lines around line 48 in that file and see if you can patch it to
> > work in all cases. The odd thing is that it only doesn't work on
> > epel7. I guess you need to compare how old the compiler is on
> > there compared to the Fedora versions.
>
> So Joseph and I managed to fix this for epel7 with following patch:
>
> src/cbang/tar/TarHeader.cpp | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/src/cbang/tar/TarHeader.cpp b/src/cbang/tar/TarHeader.cpp
> index 470b37c..50df710 100644
> --- a/src/cbang/tar/TarHeader.cpp
> +++ b/src/cbang/tar/TarHeader.cpp
> @@ -45,7 +45,8 @@
> #endif
>
> #ifndef PRIo64
> -#if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__))
> +#if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__))
> || \
> + defined(__aarch64__) || defined(__ppc64__) || defined(__PPC64__)
> #define PRIo64 "lo"
> #else
> #define PRIo64 "llo"
>
> It seems GCC 4.8 needs these macros defined explicitly, while GCC > 6
> inherits it from something else (_M_X64 perhaps?), thoughts?
I guess it depends if (and how) inttypes.h header gets included, it's
provided by glibc.
Dan
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]