On Sat, Apr 13, 2019 at 4:37 PM Jonathan Dieter <jdie...@gmail.com> wrote:
>
> On Sat, 2019-04-13 at 13:11 -0700, John Reiser wrote:
> > >  Unfortunately, the gcc in EL6 is too old to build zchunk
> >
> > In what specific way(s)?  Can the complaints from gcc [which version?],
> > or other tools in the toolchain, be listed here?
> > Other developers may have faced the same or similar problems,
> > and may have tools to help.
>
> Sorry, I should have shared that the first time around.
>
> The version of gcc that comes with EL6 is 4.4.7.
>
> When building zchunk, I get a number of messages that look like:
> $ ninja-build
> [1/178] Compiling C object 'src/lib/zck@sha/comp_zstd_zstd.c.o'.
> FAILED: src/lib/zck@sha/comp_zstd_zstd.c.o
> cc  -Isrc/lib/zck@sha -Isrc/lib -I../src/lib -Iinclude -I../include -pipe 
> -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=gnu99 -O0 -g -DZCHUNK_ZSTD 
> -DZCHUNK_OPENSSL -fvisibility=hidden -fPIC -MMD -MQ 
> 'src/lib/zck@sha/comp_zstd_zstd.c.o' -MF 
> 'src/lib/zck@sha/comp_zstd_zstd.c.o.d' -o 
> 'src/lib/zck@sha/comp_zstd_zstd.c.o' -c ../src/lib/comp/zstd/zstd.c
> In file included from ../src/lib/comp/zstd/zstd.c:34:
> ../src/lib/zck_private.h:92: error: redefinition of typedef 'zckCtx'
> include/zck.h:49: note: previous declaration of 'zckCtx' was here
> ../src/lib/zck_private.h:106: error: redefinition of typedef 'zck_log_type'
> include/zck.h:47: note: previous declaration of 'zck_log_type' was here
> ../src/lib/zck_private.h:117: error: redefinition of typedef 'zckHash'
> include/zck.h:50: note: previous declaration of 'zckHash' was here
> ../src/lib/zck_private.h:150: error: redefinition of typedef 'zckDL'
> include/zck.h:54: note: previous declaration of 'zckDL' was here
> ../src/lib/zck_private.h:165: error: redefinition of typedef 'zckChunk'
> include/zck.h:51: note: previous declaration of 'zckChunk' was here
> ../src/lib/zck_private.h:177: error: redefinition of typedef 'zckIndex'
> include/zck.h:52: note: previous declaration of 'zckIndex' was here
> ../src/lib/zck_private.h:193: error: redefinition of typedef 'zckRange'
> include/zck.h:53: note: previous declaration of 'zckRange' was here
> ../src/lib/zck_private.h:224: error: redefinition of typedef 'zckComp'
> ../src/lib/zck_private.h:91: note: previous declaration of 'zckComp' was here
> ../src/lib/zck_private.h:298: error: redefinition of typedef 'zckCtx'
> ../src/lib/zck_private.h:92: note: previous declaration of 'zckCtx' was here
>
> For reference, you can find zck.h.in (which gets processed into zck.h
> with the version added) at:
> https://github.com/zchunk/zchunk/blob/master/include/zck.h.in
>
> and zck_private.h at:
> https://github.com/zchunk/zchunk/blob/master/src/lib/zck_private.h
>
> As far as I can see, gcc-4.7 doesn't like that I'm typedefing the same
> struct to the same type twice.  Later versions don't see it as a
> problem at all.
>
> (Just to be clear, this still happens if I change zck_private.h to say:
> typedef struct zckCtx zckCtx;)
>

If devtoolset is available for EPEL6 (which I think it is?), you can
simply use it by doing the following:

Insert into BRs:
BuildRequires: devtoolset-7-toolchain

Then add to top of %build:
source /opt/rh/devtoolset-7/enable



-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to