Искажает ли nvcc имена в своих сообщениях об ошибках иначе, чем в создаваемом им скомпилированном коде?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Искажает ли nvcc имена в своих сообщениях об ошибках иначе, чем в создаваемом им скомпилированном коде?

Сообщение Anonymous »

Я использую Windows, использую VS2022. Я создал библиотеку, используя CUDA, встроенную в графический интерфейс MSVC (не выполняемую непосредственно из командной строки), и в ней я экспортирую функцию устройства. Затем у меня есть еще один файл .cu, который я создаю в другом проекте CUDA и связываю с файлом lib библиотеки.
Я получаю сообщение об ошибке с неопределенной ссылкой на _ZN7ustructaSERKS_< /code> но если я посмотрю в Dependency Walker на экспортированные функции, они будут больше похожи на ??Kustruct@@QEBA?AV0@H@Z (вероятно, это не одна и та же функция, а Дело в том, что протоколы искажения разные).
Поскольку я пытаюсь решить эту проблему, мне интересно, выполняет ли Dependency Walker собственное искажение того, что находится в библиотеке dll, чтобы всегда отображать согласованный протокол, или, возможно, nvcc искажает один способ сообщений об ошибках и другой способ генерации кода. Конечно, принимая эти имена за чистую монету, неопределенная ссылка имеет смысл, если библиотека искалечена одним способом, а меньший проект — другим, но они оба встроены в графический интерфейс с одинаковыми настройками компилятора и компоновщика, насколько я могу судить.
Кстати, если я использую Dependency (современную версию Dependency Walker), он отображает все в неизмененном виде, так что это тот случай, когда приложение отображает это определенным образом, который отличается от скомпилированного. код.

Подробнее здесь: https://stackoverflow.com/questions/792 ... in-the-com
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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