Я использую premake5 alpha 6 в Windows.
Проблема возникла, когда я обнаружил, что для параметров «Библиотека времени выполнения» моего проекта Visual Studio было установлено значение «Многопоточная DLL/MD» в режиме отладки вместо «Многопоточная отладочная DLL» (/MDd).
В ходе расследования я обнаружил, что для конфигурации отладки файла проекта было установлено значение UseDebugLibraries = false. Если я вручную установил для этого параметра значение true в моем файле проекта, параметр «Библиотека времени выполнения» конфигурации отладки правильно отображается как /MDd.
Как установить для UseDebugLibraries значение true в режиме отладки в предварительных сценариях? Я делаю что-то вроде ниже. Обратите внимание, что этот проект является «SharedLib». Я обнаружил, что если тип «StaticLib», параметр библиотеки времени выполнения /MDd работает правильно.
project "Project"
location "../src"
filename "Project_%{_ACTION or ''}"
kind "SharedLib"
language "C++"
pchheader "stdafx.h"
pchsource "../src/Project/stdafx.cpp"
includedirs {
"../include",
"../src/Project",
}
files {
"../src/Project/**.cpp",
"../src/Project/**.h",
"../src/Project/Project.rc"
}
configuration "vs*"
objdir "../src/Project/$(PlatformToolset)"
configuration { "x64", "Debug" }
defines { "_DEBUG" }
flags { "Symbols" }
configuration { "x64", "Release" }
defines { "NDEBUG" }
configuration { "x86", "Debug" }
defines { "_DEBUG" }
flags { "Symbols" }
configuration { "x86", "Release" }
defines { "NDEBUG" }