фатальная ошибка LNK1112: тип компьютера с модулем 'x64' конфликтует с типом машины назначения ' X86 '

Я использую CUDA (VC ++, Visual studio 2008sp1) для отладки программы FEM. Программа может работать только на платформе Win32, из-за недостатка cuda. Я думаю, что все связанные библиотечные файлы скомпилированы на платформе x86, но когда я скомпилирую их, я получаю сообщение об ошибке «Неустранимая ошибка LNK1112: тип компьютера модуля« x64 »конфликтует с типом целевой машины« X86 »».

Я пытался преобразовать платформу в x64, но это не сработало. Пожалуйста, скажите мне: что такое «тип машины модуля» и что такое «тип машины цели»? Как я могу преодолеть это?

171
задан CJBS 26 January 2017 в 17:23
поделиться

2 ответа

У вас, вероятно, есть один файл .OBJ или .LIB, предназначенный для x64 (это тип модульного компьютера), пока вы связываетесь для x86 (это тип целевой машины).

Используйте DUMPBIN / HEADERS для ваших файлов .OBJ и проверьте запись машины в блоке FILE HEADER VALUES.

11
ответ дан 23 November 2019 в 20:41
поделиться

что такое ОС? если это Windows x64, то вам нужно убедиться, что CUDA x64 была установлена ​​и, следовательно, VS2008 должен скомпилировать проект в режиме x64...

CUDA установит только x64 ИЛИ x86 в Windows

-1
ответ дан 23 November 2019 в 20:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: