/usr/lib/libstdc++.so.6
должно быть символической ссылкой на /usr/lib/libstdc++.so.6.0.14
. Это, вероятно, та версия, которая вам нужна.
/usr/lib32/libstdc++.so.6
должно быть символической ссылкой на /usr/lib32/libstdc++.so.6.0.14
, они предназначены для 32-битных программ, обычно они вам не нужны.
/usr/lib/gcc/x86_64-linux-gnu/4.4/libstdc++.so
это проблема.
double-conversion-0.2.0.1
, вероятно, связан с ним, и ghci
не может его найти. Обычно все должно быть связано с libstdc++.so.6
, а не libstdc++.so
без суффикса версии.
Я думаю, ни у кого не должно быть версии 1020 * вообще нигде в системе. (Например, на моем Gentoo Box нет ни одного.) Это опасно, так как разные основные версии libstdc++
обычно двоично несовместимы. Попробуйте удалить библиотеку из-под /usr/lib/gcc/
, затем переустановить gcc
и посмотреть, будет ли она установлена снова.
Если он действительно установлен, то символическая ссылка с именем /usr/lib/libstdc++.so
, указывающая на /usr/lib/libstdc++.so.6
, должна решить эту проблему. Я не уверен, что это был бы правильный способ решить это в долгосрочной перспективе.
Это то, что я обнаружил в ходе экспериментов с моей собственной коробкой Linux. Я не специалист по Ubuntu, он может отличаться от других Linux.