Так что теперь я отчаянно пытаюсь найти решение этой проблемы. Я собираю разделяемую библиотеку .so в Ubuntu 32 бит (пробовал делать это под Debian и Ubuntu 64 бит, но ни одна не работала)
Я продолжаю получать: /usr/lib/libstdc++.so.6: version ''GLIBCXX_3.4.15' not found
каждый раз, когда я пытаюсь загрузить свой плагин.
Вот как я получаю эту ошибку:
- Установите последнюю версию Ubuntu 32 bit
- sudo apt-get install build-essential
- Скомпилируйте и загрузите мой плагин (.so)
Вот несколько ссылок, которые я нашел и попробовал, но ни одна из них не работала для меня:
(Мой старый вопрос: я как-то исправил это через несколько дней после публикации этого вопроса, но я не могу вспомнить, как именно я это сделал)
Другой пользователь с той же проблемой
Я вижу, что некоторые люди исправили это, переместив libstdc++ (я думаю) в какой-то каталог, а затем указав или связав idk с этим каталогом, но это меня просто озадачило.
Кто-нибудь знает исправление?
(Изменить :) - Выполнение: strings/usr/lib/libstdc++.so.6 | grep GLIBC
strings/usr/lib/libstdc++.so.6 | grep GLIBC
в терминале дает мне: strings '/usr/lib/libstdc++.so.6': No such file
. Может ли это быть проблема? И если да, то как мне установить эту библиотеку?
(Edit2 :) Кто-нибудь еще знает о решении?
(Edit3) Все еще нуждается в решении. Есть ли способ узнать, на каком дистрибутиве была скомпилирована общая библиотека? Я знаю, что однажды скомпилировал эту же библиотеку, но не помню !!
(Edit4) ldd my_lib_.so
дает мне:
linux-gate.so.1 => (0xb77d7000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb76c1000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb76a4000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb74fa000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb74ce000)
/lib/ld-linux.so.2 (0xb77d8000)
ldd program_im_loading_so_into
дает мне:
linux-gate.so.1 => (0xb77d8000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb77c0000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb77a5000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb76bb000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb768f000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb7672000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb74c9000)
/lib/ld-linux.so.2 (0xb77d9000)
бегущие strings/usr/lib/i386-linux-gnu/libstdc++.so.6 | grep GLIBCXX
strings/usr/lib/i386-linux-gnu/libstdc++.so.6 | grep GLIBCXX
дает мне:
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_DEBUG_MESSAGE_LENGTH
и наконец вот моя версия gcc:
'gcc version 4.6.4 (Ubuntu/Linaro 4.6.4-1ubuntu1~12.04)'