Прежде всего, знайте, что я очень плохо знаком с c ++ и Ubuntu.
У меня есть программа, которую я пытаюсь скомпилировать с помощью GCC (моя версия - gcc 4.8.4) с использованием make-файла.,Проблема в том, что исполняемый файл создается в каталоге, в котором он работает, но когда он копируется в любой другой (или даже принудительно создается там в make-файле), он говорит.
/usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found
Также, когда я проверяюдля версий со строками /usr/lib/x86_64-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
Насколько я читал в Интернете, проблема в том, что GLIBCXX_3.4.20 поддерживается только gcc 4.9 и выше, в то время как я использую 4.8.4, но все ещеЯ не понимаю, почему он будет работать в определенном каталоге, а не в других.
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.4)
Поскольку у меня нет прав для обновления gcc, я хотел бы знать, что я могу сделать, чтобы решитьэто ... Какие вещи я должен избегать использовать в коде, которые требуют GLIBCXX_3.4.20?Могу ли я заставить компилятор как-то использовать более старую версию этой библиотеки или включить эту конкретную библиотеку в двоичный файл?(Я не могу понять, почему это будет работать в каталоге, если у меня нет необходимой библиотеки)
Заранее спасибо и извините, если мой вопрос тупой или не имеет смысла, как я сказал, что яочень новый для всего этого.