Есть ли способ определить, был ли файл общего объекта (.so) создан из кода C или C++?C++

Программы на C++. Форум разработчиков
Anonymous
Есть ли способ определить, был ли файл общего объекта (.so) создан из кода C или C++?

Сообщение Anonymous »

У меня есть файл общего объекта (.so). Есть ли какой-то конкретный способ проверить, был ли он сгенерирован из файла кода C или C++. Можем ли мы получить какие-либо подсказки или подробности из файла, чтобы сделать обоснованное предположение?
Подробное объяснение проблемы:
Я пытаюсь перехватить API-интерфейсы драйверов CUDA, метод сделать это — использовать LD_PRELOAD и создать файл оболочки libcuda.so. Файл и его функции я могу сгенерировать с помощью C, C++ или даже Rust. Но проблема в том, что при продвижении вперед я столкнусь с проблемами типов, если выберу C++, поскольку большинство типов CUDA находятся в C. Я наткнулся на аналогичный проект, который делает это, и я получил эти файлы .so из их gitrepo (код недоступен, только объектные файлы), поэтому я хотел знать, сделали ли они это, используя C или C++.

Подробнее здесь: https://stackoverflow.com/questions/798 ... ted-from-a

Вернуться в «C++»