Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nautilus: build/ops: use gcc-8 #30089

Merged
merged 3 commits into from Nov 16, 2019
Merged

Conversation

tchaikov
Copy link
Contributor

@tchaikov tchaikov commented Sep 3, 2019

we are using DTS-7 on CentOS7 and gcc-7 from ubuntu-toolchain-r PPA on xenial already for building nautilus.

we switched to GCC-8 in master for addressing ICE issues. these issues may or may not impact nautilus. and it's found that some builders are using GCC-8. even though install-deps.sh only installs gcc-7 if the installed GCC is lower than 7 on xenial. also, it's found that if we compile nautilus tree using GCC-7. we have

In file included from /home/jenkins-build/build/workspace/ceph-pull-requests/src/include/encoding.h:30:0,
                 from /home/jenkins-build/build/workspace/ceph-pull-requests/src/include/uuid.h:8,
                 from /home/jenkins-build/build/workspace/ceph-pull-requests/src/include/types.h:21,
                 from /home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_json.h:4,
                 from /home/jenkins-build/build/workspace/ceph-pull-requests/src/rgw/rgw_auth_keystone.cc:13:
/home/jenkins-build/build/workspace/ceph-pull-requests/src/common/ceph_time.h:504:16: warning: variable templates only available with -std=c++14 or -std=gnu++14
 constexpr bool converts_to_timespec_v = converts_to_timespec<Clock>::value;
                ^~~~~~~~~~~~~~~~~~~~~~

so, to ensure that we use the same compiler for building nautilus. let's move to GCC-8. also as a side-effect, the produced binary should be better because of the newer (and better) library, compiler and toolchain.

seems devtools-8 is not packaged on aarch64. and we are suffering from
ICE on centos7 when building with GCC-7.3. so let's try GCC-8.2!

Fixes: http://tracker.ceph.com/issues/38892
Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 5ae3b06)
should activate devtoolset-8 not devtoolset-7 for enabling GCC-8.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 9694a72)
to be consistent with ceph#27183 and ceph/ceph-build#1286

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit f52d69e)
@smithfarm
Copy link
Contributor

@tchaikov Cool, thanks! I'm not going to hit the merge button, yet, though - waiting for v14.2.3 tag to be added to the git repo.

@smithfarm smithfarm changed the title nautilus: use gcc-8 nautilus: build/ops: use gcc-8 Sep 3, 2019
@smithfarm
Copy link
Contributor

test this please

@smithfarm
Copy link
Contributor

jenkins test docs

@badone
Copy link
Contributor

badone commented Sep 10, 2019

@tchaikov in the description did you actually mean to say "let's move to GCC-8" rather than "let's move to GCC-7"?

@yuriw
Copy link
Contributor

yuriw commented Nov 12, 2019

@yuriw yuriw merged commit c338d6c into ceph:nautilus Nov 16, 2019
@tchaikov tchaikov deleted the wip-nautilus-gcc-8 branch November 16, 2019 16:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants