Încerc să instalez acest software numit Skedler. Documentația lor menționează dependențele bibliotecii GLIBCXX, dar nu ar putea fi deranjați oferind instrucțiuni de instalare.

GLIBCXX libraries Skedler has dependency on libstdc++ library. Following are the GLIBCXX versions the code depends on libstdc++.so.6 (GLIBCXX_3.4.9) => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6 (GLIBCXX_3.4.15) => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6 (GLIBCXX_3.4) => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 To check the versions on your server. Please run the command CentOS strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX Debian/Ubuntu strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX If the version is not available, update the GCC compiler 

Rularea comenzii grep dă o no such file found pe Ubuntu 18.04. De asemenea, am încercat sudo apt-get install libstdc++ și alte câteva comenzi, dar nimic nu pare să instaleze bibliotecile necesare.

Răspuns

Calea sugerată de verificat nu este corectă pentru Debian / Ubuntu modern. Comanda ar trebui să fie probabil:

strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX 

Și acest segment arată ca o parte a ieșirii comenzii ldd:

libstdc++.so.6 (GLIBCXX_3.4.9) => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6 (GLIBCXX_3.4.15) => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6 (GLIBCXX_3.4) => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 

Faptul că nu există text not found după săgeata de pe oricare dintre aceste trei linii indică faptul că binarul care a fost testat de programul de instalare a găsit cu succes tot ce avea nevoie în bibliotecă. Deci, se pare că această dependență este deja gestionată de sistemul dvs.

Apropo, ieșirea Skedler pare puțin confuză în ceea ce privește numele bibliotecii. Numele cel mai vizibil pentru utilizator ar trebui să fie de fapt libstdc++.

În Debian 9, există două versiuni ale libstdc++ disponibile în prezent: versiunea curentă este ambalată ca libstdc++6, iar o versiune veche care a fost populară cu diferite software-uri proprietare este ambalată ca libstdc++5. Cred că Ubuntu ar putea avea disponibile variante cu nume similare.

Numele GLIBCXX este prefixul numelor simbolurilor versiunii din bibliotecă. De obicei, ar fi mai strâns legat de numele propriu-zis al bibliotecii (fără prefixul „lib”), dar în acest caz, semnele plus sunt o problemă, deci sunt înlocuite cu caractere X.

(Vechiul libstdc++5 folosea un ABI diferit care este incompatibil cu cel curent, iar simbolurile versiunii sale foloseau un prefix GLIBCPP.)

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *