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

unrecognized command line option '-std=c++14' during Linux builds #9

Closed
mpenkov opened this issue Nov 3, 2020 · 12 comments
Closed

Comments

@mpenkov
Copy link
Collaborator

mpenkov commented Nov 3, 2020

full log

I updated the Ubuntu distro to Bionic (18.04LTS) to get a newer compiler, and verified that the gcc version is recent enough:

$ x86_64-linux-gnu-gcc --version
x86_64-linux-gnu-gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

This is consistent with what TravisCI lists on their page for Bionic, so no surprises there. According to the GCC docs, that version of the compiler should support -std=c++14, so I'm not sure what the problem is here.

@piskvorky
Copy link
Owner

How about 20.04 LTS = Focal?

@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 7, 2020

Tried it, unfortunately no effect.

https://travis-ci.org/github/RaRe-Technologies/gensim-wheels/jobs/741274157

@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 7, 2020

Operating System Details

Distributor ID:	Ubuntu

Description:	Ubuntu 20.04.1 LTS

Release:	20.04

Codename:	focal

Systemd Version

systemd 245 (245.4-4ubuntu3)

Cookbooks Version

883ec55 https://github.com/travis-ci/travis-cookbooks/tree/883ec55

git version

git version 2.29.2

bash version

GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu)

gcc version

gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0

@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 7, 2020

I'm a bit stumped on how to proceed here, so opened spotify/annoy#516

@piskvorky
Copy link
Owner

Weird. Is it just Annoy that errors out (not part of Gensim proper), or something truly blocking?

@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 7, 2020

I think it's just Annoy. If we could exclude it from the build process somehow, then we may be able to proceed.

I also think I've found the cause of the problem. The build is running inside yet another Docker container, inside Travis, and that Docker container is running Trusty, which has the old gcc. Argh.

https://github.com/matthew-brett/multibuild/blob/da36cd5408e03cad504217de4a21bb8f19f2fb2f/travis_linux_steps.sh

I'm unfamiliar with this multibuild stuff, so my next step is to figure out who introduced it and go nag them. Failing that, I'll have to learn more about it.

@piskvorky
Copy link
Owner

piskvorky commented Nov 7, 2020

We may have to move away from Travis altogether, I heard they're sunsetting their open source plans. So I'm not sure whether to invest more time into it.

"Github Actions" is one possible replacement – we have a ticket at piskvorky/gensim#2696.

@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 7, 2020

Yes, I've used github actions before, they are quite good.

The problem is: we're coupled to travis via this multibuild stuff, and breaking this coupling will require some effort.

@piskvorky
Copy link
Owner

piskvorky commented Nov 7, 2020

That is true.

I see that effort as a great opportunity to clean up the CI system overall, make it saner – Travis is giving us too much trouble, unreliable. I look forward to it but not sure about the timing :) Certainly not now, in the middle of a release.

@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 7, 2020

Yeah, while we're at it, we should consider building wheels for every build (or at least for every merged PR).

Part of the pain we're feeling now is technical debt caused by a low release cadence.

@piskvorky
Copy link
Owner

piskvorky commented Nov 10, 2020

Sure, why not. But please finish this beta release first, to avoid any more mishaps. The current frozen-in-mid-release project state is an invitation to further git trouble (not to mention user confusion).

mpenkov added a commit that referenced this issue Nov 13, 2020
@mpenkov
Copy link
Collaborator Author

mpenkov commented Nov 14, 2020

I've worked around the problem by removing annoy from the build environment.

@mpenkov mpenkov closed this as completed Nov 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants