Khi biên dịch với -fsanitize=memory
Tôi nhận được WARNING: Trying to symbolize code, but external symbolizer is not initialized!
khi chạy chương trình. Làm cách nào để khởi tạo biểu tượng bên ngoài?Làm cách nào để khởi tạo biểu tượng bên ngoài của LLVM?
Trả lời
tôi giải quyết vấn đề của riêng tôi sử dụng MSAN_SYMBOLIZER_PATH=$(which llvm-symbolizer-3.4) ./a.out
. Vấn đề là Ubuntu postfixes số phiên bản nhưng nhị phân không biết điều đó. Tất nhiên bạn cần phải sử dụng MSAN
thay vì ASAN
khi sử dụng bộ khử trùng bộ nhớ.
Bạn có nghĩa vụ có thể đặt biến môi trường ASAN_FILTER để trỏ vào một biểu tượng, nhưng tôi không thể làm cho nó hoạt động. Tuy nhiên, bạn có thể chuyển hướng stderr vào một biểu tượng sau khi thực tế. Bạn vẫn sẽ nhận được cảnh báo về biểu tượng không được khởi tạo, nhưng tên tệp và số dòng sẽ chính xác.
Bạn có thể sử dụng asan_symbolizer.py làm biểu tượng bên ngoài. Sau khi tải về nó từ liên kết đó (đến/tmp, ví dụ), gọi chương trình của bạn như vậy (trong bash, ví dụ này):
./myprogram 2>&1 | /tmp/asan_symbolize.py | c++filt
Tôi nhận được cảnh báo như vậy khi chạy phiên bản gỡ lỗi chương trình (được biên dịch bằng -fsanitize=address
) trên máy Linux không chứa cài đặt clang
. Sự cố đã biến mất sau khi tôi cài đặt clang
từ .
Trên hệ thống Ubuntu của tôi, vấn đề là các công cụ của LLVM được cài đặt theo /usr/bin
với hậu tố phiên bản (như llvm-symbolizer-4.0
) và các công cụ vệ sinh đang tìm kiếm chúng mà không có hậu tố phiên bản.
LLVM cũng cài đặt các tệp nhị phân của nó, ví dụ: /usr/lib/llvm-4.0/bin
; các công cụ dưới /usr/bin
thực ra chỉ là các liên kết tượng trưng. Vì vậy, một giải pháp dễ dàng là thêm thư mục /usr/lib/llvm-*/bin
thích hợp vào đường dẫn của bạn khi làm việc với các chất khử trùng.
- 1. biểu tượng bên ngoài không được giải quyết - Qt tạo
- 2. biến khởi tạo bên ngoài của PHP constructor
- 3. XCode LLVM + GCC 4.2 - Tạo gỡ lỗi biểu tượng
- 4. Liên kết rất nhiều .libs để tạo DLL: biểu tượng bên ngoài chưa được giải quyết _DllMainCRTStartup
- 5. Tôi làm cách nào để nắm bắt các sự kiện nhất định của biểu mẫu từ bên ngoài biểu mẫu?
- 6. Làm thế nào để uint24_t của clang hoạt động? Tôi có thể sử dụng nó bên ngoài clang/LLVM?
- 7. Tạo biểu tượng khởi động động
- 8. Cách tạo biểu tượng gỡ lỗi gcc bên ngoài mục tiêu xây dựng?
- 9. Cách tạo biểu tượng trình khởi chạy Android
- 10. Làm cách nào để tạo biểu tượng Khay bằng FireMonkey?
- 11. Làm thế nào để khởi tạo và khởi tạo một đối tượng động trong cây biểu thức?
- 12. Làm thế nào để khởi tạo ứng dụng xương sống của bạn trong vòng require.js sau gọi lại bên ngoài
- 13. Làm cách nào để tải biểu tượng NSImage của biểu tượng cho ứng dụng của tôi?
- 14. Cách tạo biểu tượng thanh Notification \ status ở bên phải?
- 15. Làm thế nào để sử dụng LLVM để tạo biểu đồ cuộc gọi?
- 16. C++ biểu tượng bên ngoài chưa được giải quyết
- 17. Biểu tượng bên ngoài chưa được giải quyết LNK2019
- 18. Làm cách nào để bật tính năng tạo bên ngoài trong Android Studio vĩnh viễn?
- 19. Làm thế nào để khởi tạo một thể hiện của lớp bên trong nếu lớp bên trong được khai báo trong phương thức lớp bên ngoài?
- 20. Android làm cách nào để tạo biểu tượng biểu tượng có thể nhấp trong thanh tác vụ?
- 21. Làm cách nào để tạo kiểu SVG bằng CSS bên ngoài?
- 22. Làm thế nào để khởi tạo lớp trừu tượng C#?
- 23. Làm thế nào để db4o khởi tạo các đối tượng?
- 24. Làm cách nào tôi có thể giải quyết "lỗi LNK2019: biểu tượng bên ngoài chưa được giải quyết"?
- 25. Làm cách nào để nhập tệp JavaScript bên ngoài?
- 26. Làm cách nào để đặt javascript bên ngoài tiêu đề?
- 27. Làm cách nào để thay đổi biểu tượng trình khởi chạy ứng dụng trên Rung?
- 28. Làm cách nào để tạo biểu tượng toán học laTex của riêng bạn?
- 29. Làm cách nào để tạo biểu tượng cho các mục menu trong ListView của Android?
- 30. Cách giải quyết lỗi LNK2019: biểu tượng bên ngoài chưa được giải quyết - chức năng?