Error with GCC: while loading shared libraries: libisl.so.22: cannot open shared object file: No such file or directory
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Error with GCC: while loading shared libraries: libisl.so.22: cannot open shared object file: No such file or directory
Hello,
I'm tooling around on my Slackware 14.2 machine tonight, trying some beginner C programming. I encountered the following error when trying to compile my first program:
/usr/libexec/gcc/x86_64-slackware-linux/9.3.0/cc1: error while loading shared libraries: libisl.so.22: cannot open shared object file: No such file or directory
I imagine this is a fairly standard error. The library, libisl.so.22 is located at /usr/lib. I added this directory to my ld.so.conf file and ran ldconfig. This didn't help.
Running ldconfig -p shows the library in the appropriate directory.
I should note this is a 64-bit machine. It's been a while since I set it up, so I've forgotten the finer points of the system.
I'm fairly sure the answer is found in this multilib setup.
It would seem I uncommented 2 lines. I don't know if this will make much difference, but it is mentioned in the file notes. I will comment out the mirror from usc.edu
I imagine this is a fairly standard error. The library, libisl.so.22 is located at /usr/lib. I added this directory to my ld.so.conf file and ran ldconfig. This didn't help.
I should note this is a 64-bit machine.
The /usr/lib/libisl.so.22 should be a 32-bit library.
Do you have got a /usr/lib64/libisl.so.22 too?
Furthermore both gcc 9.3 and isl-22.1 are packages for -current, not for 14.2
PS: -current is often referred to as 14.2+ (note the PLUS) but is at the moment closer to the "to be released" 15.0 version then the almost 4 year old 14.2 one of Slackware.
Packages for -current are not compatible with 14.2 anymore.
Last edited by ehartman; 05-21-2020 at 06:36 AM.
Reason: added PS
All of the mirrors under Slackware64-current in my slackpkg mirrors file are commented out. I've been using the Slackware64-14.2 mirrors for a while. I have set it to a single mirror, from texas.edu.
This would seem to contradict my downloading Slackware-current packages. It is possible I used the "current" mirror during initial set up.
I'm tooling around on my Slackware 14.2 machine tonight, trying some beginner C programming. I encountered the following error when trying to compile my first program:
/usr/libexec/gcc/x86_64-slackware-linux/9.3.0/cc1: error while loading shared libraries: libisl.so.22: cannot open shared object file: No such file or directory
I imagine this is a fairly standard error. The library, libisl.so.22 is located at /usr/lib. I added this directory to my ld.so.conf file and ran ldconfig. This didn't help.
Running ldconfig -p shows the library in the appropriate directory.
I should note this is a 64-bit machine. It's been a while since I set it up, so I've forgotten the finer points of the system.
I'm fairly sure the answer is found in this multilib setup.
I'm old enough to remember that summer Slackware 14.2 was released. Cc1 didn't have dependancy on isl. You messed up the system with newer gcc from -current.
libisl should be provided by the isl package in the l/ series on -current. gcc is looking for the 0.22.1 version of isl, which is version in -current right now. That means the gcc you're using is from -current (or multilib for -current).
If you're running a 14.2 install, isl is not included (it was added to -current in Sep 2019).
So, there's 3 different things it could be (in the order I believe to be the most likely to the least likely).
1. You're running 14.2 but installed the multilib packages for -current (which is what Alien Bob suggested above).
2. You're running an incomplete version of -current and missing the isl package.
3. You're running an partially out-of-date version of -current and have the older 0.21 version of isl.
To figure this out, can you provide us the output of the following command?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.