Pokouším se nainstalovat tento software s názvem Skedler. Jejich dokumentace zmiňuje závislosti knihoven GLIBCXX, ale nemohly se obtěžovat poskytnutím instalačních pokynů.
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
Spuštěním příkazu grep
přidejte no such file found
na Ubuntu 18.04. Také jsem zkusil sudo apt-get install libstdc++
a několik dalších příkazů, ale zdá se, že nic nenainstaluje požadované knihovny.
Odpověď
Navrhovaný název cesty ke kontrole není pro moderní Debian / Ubuntu přesný. Příkaz by pravděpodobně měl být:
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
A tento segment vypadá jako součást výstupu příkazu 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
Skutečnost, že za šipkou na žádném z těchto tří řádků není text not found
naznačuje, že binární byl otestován instalačním programem, našel v knihovně vše potřebné. Vypadá to, že tuto závislost již váš systém zpracovává.
Mimochodem, výstup Skedleru vypadá trochu matoucí, pokud jde o název knihovny. Nejviditelněji viditelné jméno by mělo být ve skutečnosti libstdc++
.
V Debianu 9 jsou aktuálně k dispozici dvě verze libstdc++
: aktuální verze je zabalena jako libstdc++6
, a starší verze, která byla dříve oblíbená u různých proprietárních softwarů, je zabalena jako libstdc++5
. Myslím, že v Ubuntu mohou být k dispozici varianty s podobným názvem.
Název GLIBCXX
je předpona názvů symbolů verzí v knihovně. Obvykle by to více souviselo se skutečným názvem knihovny (bez předpony „lib“), ale v tomto případě jsou znaménka plus problém, a proto jsou nahrazeny znaky X.
(Starý libstdc++5
používal jiný ABI, který není kompatibilní s aktuálním, a jeho symboly verze používaly předponu GLIBCPP
.)