Я пытаюсь запустить предварительную скомпилированный код, но я получаю следующую ошибку:
./bin/stipdet: /cm/shared/apps/gcc/4.3.4/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by ./bin/stipdet)
Я погуглил ошибку и увидел, что некоторые люди решили аналогичные проблемы, удалив libstdc ++. so.6
и добавив новую динамическую ссылку, указывающую на usr / local / lib
. Но у меня нет корневого доступа к системе, в которой я пытаюсь запустить это, поэтому я не могу добавлять / удалять файлы в этом каталоге.
Кто-нибудь знает другой способ решить эту проблему?
ОБНОВЛЕНИЕ :
Я попытался добавить каталог другой версии libstdc ++. So.6
в LD_PRELOAD
, но у меня это не сработало, он по-прежнему использует файл из неправильного каталога.
То же самое происходит, когда я добавляю правильный каталог к LD_LIBRARY_PATH
. Наконец, я также попытался удалить все остальное из LD_LIBRARY_PATH
, а затем добавить правильный каталог (просто чтобы попробовать). Похоже, это исправило исходную ошибку!
Но теперь я получаю ту же ошибку в другом месте:
./bin/stipdet: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /var/scratch/user/local/lib/libopencv_features2d.so.2.2)
Очевидно opencv
использует другую версию glibcxx
, поэтому переключение на другую libstdc
прерывается opencv
. Есть ли способ решить эту проблему?