#python #windows #visual-studio-2012 #cmake #vulkan
#python #Windows #visual-studio-2012 #cmake #vulkan
Вопрос:
Я пытаюсь создать Vulkan Tools для Windows. Для сборки я использую:
Windows 7 x64
Visual Studio 2012
cmake 3.6.1
python 3.5
Этот параметр, который я установил из командной строки в файле Windows bat, во время работы после CMake у меня появляется следующая ошибка в CMakeError.log:
LINK : fatal error LNK1104: cannot open file 'MSVCRTD.lib' .
Когда я открываю созданный CompilerIdCXX.vcxproj и пытаюсь его собрать, я получаю аналогичную проблему, если я добавляю путь к требуемой библиотеке, она создается нормально. В файле CMake я пытаюсь добавить путь к библиотеке, используя команду link_directories, после повторного запуска cmake у меня возникла проблема, аналогичная предыдущей.
Кстати, после добавления системы сообщений я вижу, что cmake остановлен в командном проекте.
Комментарии:
1. Вы пытались изменить
CMakeLists.txt
файл, но мы можем только догадываться , как вы это сделали. Предоставьте код.
Ответ №1:
(Отредактировано, чтобы предоставить ссылку на VT Github)
Если вы посмотрите на BUILDVT.md вы заметите, что в файле на GitHub VulkanTools указано, что требуется версия VS 2013 или новее. Это связано с тем, что некоторые его компоненты используют функции C 11, а в поддержке 2013 года некоторые из этих функций реализованы более корректно, чем в 2012 году.
Возврат к конкретной ошибке, которую вы указываете, обычно происходит из-за того, что она пытается создать ссылку на библиотеку, которая была собрана в режиме отладки с использованием другой Visual Studio, отличной от той, что вы установили. Даже если вы установили компоненты VS runtime из 2013, они не будут содержать библиотеки отладки. Скорее всего, ваша проблема заключается в том, что у вас есть Vulkan-1.lib / dll в вашей системе, созданной VS 2013, и вашему VS 2012 это не нравится.
Если это проблема, вам доступны два варианта:
- Загрузите либо версию VS 2013 Express, либо версию VS 2015 Community Edition, если вы хотите скомпилировать элементы Vulkan Tools. Конечно, если вы работаете в корпорации, вам нужно будет купить один из них.
- Посмотрите, с какой библиотекой, на которую вы ссылаетесь, которая жалуется, и восстановите ее с помощью VS 2012. Предостережение здесь в том, что я не уверен, что Vulkan Tools будет правильно собран с VS 2012 из-за использования C 11.