On Sat, Apr 13, 2019 at 4:37 PM Jonathan Dieter <jdieter@xxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx 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@xxxxxxxxxxxxxxxxxxxxxxx