/usr/lib/x86_64-linux-gnu/libstdc++.so.6: версия `GLIBCXX_3.4.22 'не найдена - PullRequest
0 голосов
/ 01 мая 2020

Я пишу программу, которая собирает и запускает на моем компьютере linux без проблем. Я намереваюсь запустить это в другой системе, где у меня нет контроля над установленными зависимостями, поэтому моя цель - статически связать все. Тем не менее, я получаю вышеуказанную ошибку, даже когда я пропускаю следующие флаги во время компиляции. Это то, что сработал automake, когда я передал -static в LDFLAGS

/bin/bash ../../libtool  --tag=CC   --mode=link /usr/bin/clang-9 -g -O1 -fsanitize=fuzzer -fsanitize=address -Wall -static -o fuzzer fuzzer.o -lpthread -lm -lnsl -lresolv

или

/bin/bash ../../libtool  --tag=CC   --mode=link /usr/bin/clang-9 -g -O1 -fsanitize=fuzzer -fsanitize=address -Wall -lstdc++ -static-libgcc -o fuzzer fuzzer.o -lpthread -lm -lnsl -lresolv

Те же результаты.

Кроме того, я также пытался использовать флаг -static и встретить с такими же результатами

root@e143b56f4f87:*****# ldd fuzzer
linux-vdso.so.1 (0x00007ffe4b7a8000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fe2d009d000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe2cfe7e000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe2cfae0000)
libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007fe2cf8c6000)
libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007fe2cf6ab000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe2cf4a3000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe2cf29f000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe2cf087000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe2cec96000)
/lib64/ld-linux-x86-64.so.2 (0x00007fe2d0426000)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...