Руководство по установке
Это руководство поможет вам установить и настроить Trusted-CPP в вашей системе.
Требования
Перед установкой Trusted-CPP убедитесь, что у вас установлены следующие компоненты:
- Компилятор C++, поддерживающий C++20 (рекомендуется clang++ 20 или выше)
- CMake 3.12 или выше
- Git (для клонирования репозитория)
Сборка из исходного кода
- Клонируйте репозиторий:
git clone https://github.com/afteri-ru/trusted-cpp.git cd trusted-cpp - Создайте каталог для сборки и перейдите в него:
mkdir build cd build - Настройте проект с помощью CMake:
cmake .. - Соберите проект:
make
Это соберет как плагин Clang (trusted-cpp_clang.so), так и исполняемый файл для тестов.
Использование плагина
После сборки вы можете использовать плагин с clang++ для анализа вашего кода на C++:
clang++ -std=c++20 -Xclang -load -Xclang ./trusted-cpp_clang.so -Xclang -add-plugin -Xclang trust -Xclang -plugin-arg-trust -Xclang circleref-disable ваш_файл.cpp
Замените ваш_файл.cpp на путь к вашему исходному файлу C++.
Параметры плагина
Плагин поддерживает несколько аргументов командной строки:
--circleref-disable: Отключить анализ циклических ссылок (по умолчанию)--circleref-write: Записать информацию о классах для анализа циклических ссылок (первый проход)--circleref-read: Прочитать информацию о классах для анализа циклических ссылок (второй проход)
Для анализа циклических ссылок необходимо запустить плагин дважды:
- Первый проход с
--circleref-writeдля сбора информации о классах - Второй проход с
--circleref-readдля выполнения анализа
Пример анализа циклических ссылок:
# Первый проход
clang++ -std=c++20 -Xclang -load -Xclang ./trusted-cpp_clang.so -Xclang -add-plugin -Xclang trust -Xclang -plugin-arg-trust -Xclang circleref-write -fsyntax-only ваш_файл.cpp
# Второй проход
clang++ -std=c++20 -Xclang -load -Xclang ./trusted-cpp_clang.so -Xclang -add-plugin -Xclang trust -Xclang -plugin-arg-trust -Xclang circleref-read ваш_файл.cpp
Использование библиотеки
Включите заголовочный файл trust.h в ваши файлы C++ для использования возможностей библиотеки:
#include "trust.h"
// Ваш код здесь
Библиотека в виде заголовочных файлов предоставляет расширенные типы умных указателей и механизмы потоковой безопасности.
Запуск тестов
Для запуска тестов соберите исполняемый файл для тестов и запустите его:
./trusted-cpp_test
Это выполнит все модульные тесты для библиотеки и плагина Trusted-CPP.