Как уже упоминалось, использование -fsanitize = address во время компиляции или создание .so файла автоматически свяжет библиотеку libasan.so, верно?
Я столкнулся с проблемой: -
==13640==ASan runtime does not come first in initial library list; you should either link runtime to your application or manually preload it with LD_PRELOAD.
xrun: *E,ELBERR: Error during elaboration (status 1), exiting.
Я нашел та же проблема и исправление для того же самого здесь: - https://github.com/google/sanitizers/issues/796
Сначала я пытаюсь использовать -fsanitize=address ,-static-libasan
флаги для моего компилятора g cc и компоновщика для созданных .so файлов. Созданный файл библиотеки 'libsynsv.so
' сам по себе не отображает библиотеку 'asan' как свою зависимость с выводом ldd libsynsv.so
.
/ folder / san / client / src / main / cvip / asan / Release /verilog/../lib/libviputil.so: неопределенный символ: __asan_option_detect_stack_use_after_return.
Есть ли какие-либо проблемы с моей командой G CC? Почему моя библиотека не была связана с asan, хотя я запускал с -fsanitize-address.