View Single Post
Old 06-07-2020, 04:30 PM   #1
charlweed
Enthusiast
charlweed began at the beginning.
 
Posts: 27
Karma: 30
Join Date: Jul 2011
Device: none
Here's a way to work around missing CXXABI on CentOS7

If you are having problems installing Calibre on CentOS 7, here is a work-around for the courageous. You can download a current copy of libstdc++.so.6.0.26, and use that instead of libstdc++.so.6.0.19. This has some risks, because it is possible that some "things" expect that gcc 4.8.5 is always going to use libstdc++.so.6.0.19. This fix will break when centos updates gcc to the next obsolete version.

Anyway, first find a copy of libstdc++.so.6.0.26. I used python "conda" to create a new installation of python. That yielded a copy of the latest libstdc++.so in
Code:
~/.conda/pkgs/libstdcxx-ng-9.1.0-hdf63c60_0/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6.0.26
I copied that file to /usr/lib64
Code:
sudo cp ~/.conda/pkgs/libstdcxx-ng-9.1.0-hdf63c60_0/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6.0.26 /usr/lib64
Then I replaced the symbolic links in /usr/lib/gcc/x86_64-redhat-linux/4.8.2/ and /usr/lib to point to the new library

Code:
sudo ln -vs /usr/lib64/libstdc++.so.6.0.26 /usr/lib/libstdc++.so.6
sudo ln -vs /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libstdc++.so /usr/lib/libstdc++.so.6
sudo ln -vs /usr/lib64/libstdc++.so.6.0.26 /usr/lib/gcc/x86_64-redhat-linux/4.8.2/libstdc++.so
This will allow linux-installer.sh and calibre to run.
charlweed is offline   Reply With Quote