Jag försöker installera den här programvaran som heter Skedler. Deras dokumentation nämner GLIBCXX-bibliotekberoenden men de kunde inte bry sig om att ge installationsinstruktioner.

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 

Körning av grep -kommandot ger ett no such file found på Ubuntu 18.04. Jag försökte också sudo apt-get install libstdc++ och flera andra kommandon men ingenting verkar installera de nödvändiga biblioteken.

Svar

Det föreslagna sökvägen att kontrollera är inte korrekt för modern Debian / Ubuntu. Kommandot borde antagligen vara:

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

Och det här segmentet ser ut som en del av ldd kommandoutgång:

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 

Det faktum att det inte finns någon text not found efter pilen på någon av dessa tre rader indikerar att den binära som testades av installationsprogrammet hittade framgångsrikt allt det behövde i biblioteket. Så det ser ut som att detta beroende redan hanteras av ditt system.

Förresten ser Skedler-utgången lite förvirrande ut angående bibliotekets namn. Det mest användarsynliga namnet borde faktiskt vara libstdc++.

I Debian 9 finns det för närvarande två versioner av libstdc++: den aktuella versionen är förpackad som libstdc++6, och en äldre version som brukade vara populär bland olika proprietär programvara är förpackad som libstdc++5. Jag antar att Ubuntu kanske har liknande namngivna varianter tillgängliga.

Namnet GLIBCXX är prefixet på namnen på versionssymbolerna i biblioteket. Vanligtvis skulle det vara närmare relaterat till bibliotekets faktiska namn (utan ”lib” -prefixet), men i det här fallet är plustecknen ett problem och därför ersätts de med X-tecken.

(Den gamla libstdc++5 använde en annan ABI som är oförenlig med den nuvarande, och dess versionssymboler använde ett GLIBCPP prefix istället.)

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *