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

[dependency: v14.2 onwards] {cath-superpose.ubuntu14.04} libstdc++.so.6: version `GLIBCXX_3.4.22' not found #42

Closed
shouldsee opened this issue Sep 20, 2017 · 5 comments
Assignees

Comments

@shouldsee
Copy link

shouldsee commented Sep 20, 2017

Hi there,

I am having some problem get "cath-resolve-hits.ubuntu14.04" to run on my ubuntu.

System: Ubuntu 16.04LTS
apt version: apt 1.2.18 (amd64)

Running

./cath-resolve-hits.ubuntu14.04 

downloaded from versions newer than v0.14.2 raise an exception saying:

./cath-resolve-hits.ubuntu14.04: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by ./cath-resolve-hits.ubuntu14.04)

I tried update "libstdc++6" without useful results (along with, "libstdc++6-4.7-dev","libstdc++6-5-dbg")

sudo apt install libstdc++6
libstdc++6 is already the newest version (5.4.0-6ubuntu1~16.04.4).
libstdc++6-4.7-dev is already the newest version (4.7.4-3ubuntu12).
libstdc++6-5-dbg is already the newest version (5.4.0-6ubuntu1~16.04.4).

Although the legacy version from v0.14.1 works fine without this dependency, I am still wondering how I can install this dependency (for v0.14.2 onwards) on ubuntu quickly?

Kind regards
Feng

@tonyelewis tonyelewis self-assigned this Sep 20, 2017
@tonyelewis
Copy link
Contributor

The short answer to solve your problem now is: use the .centos6 executable instead.

But thanks for flagging this issue. As you say, the .ubuntu14.04 builds don't work out-of-the-box on Ubuntu 16.04 for ≥ 0.14.2. They do all work on Ubuntu ≥ 16.10.

I suspect this is to do with my setup for the Travis build using a package repo that pulls in more recent libraries/compilers etc. I'll look into it a bit more...

tonyelewis added a commit that referenced this issue Sep 20, 2017
@shouldsee has spotted (#42) that the executables from the current
Travis-CI Ubuntu build don't run on an out-of-the box Ubuntu 16.04
because it complains about not having GLIBCXX_3.4.22.

I think this is caused by the `.travis.yml` getting a more recent GCC
than the standard from `ppa:ubuntu-toolchain-r/test` and that GCC
bringing in a more recent `libstdc++`.

I don't want to spend lots of time trying to get a perfect solution but
it'd be good to at least reduce the minimum Ubuntu requirement
(particularly to 16.04 LTS).

This commit changes the compiler:
 * from g++ 6.3.0, which creates an exe that requires GLIBCXX_3.4.22,
 * added in Ubuntu 16.10
 * to g++ 4.9.4, which (hopefully) creates an exe that requires
 * GLIBCXX_3.4.20, added in 14.10 (I think; definitely by 15.04)

For future reference: the intermediate is GCC 5.1.0 / GLIBCXX_3.4.21,
added in 15.10
@shouldsee
Copy link
Author

@tonyelewis
The centos6 version indeed worked. Many thanks!

@tonyelewis
Copy link
Contributor

The Ubuntu builds should now work on Ubuntu ≥ 14.10 from v0.15.3 onwards.

@shouldsee, thanks for alerting me to this issue.

@shouldsee
Copy link
Author

shouldsee commented Sep 21, 2017

I have tested that cath-resolve-hits from v0.15.3 now works with my installation of Ubuntu16.04LTS.

@tonyelewis Thanks for the fix!

@tonyelewis
Copy link
Contributor

@shouldsee thanks for testing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants