Я понимаю, что CMAKE_BUILD_TYPE
работает только для генераторов с одной конфигурацией, таких как Unix Makefiles. Существуют также генераторы с несколькими конфигурациями, такие как Visual Studio или Xcode, где CMAKE_BUILD_TYPE
не работает. (см. this и this вопрос для получения дополнительной информации). Я создал проект Visual Studio 2013 x86 с cmake-gui для libharu, и нет возможности переключиться с win32 на x64 в Visual Studio. Мне интересно, почему в мультиконфигурациях необходимо указать архитектуру (x86 или x64) в cmake? Почему это невозможно в Visual Studio напрямую? Есть ли какое-то ограничение или польза или что-то, о чем я должен знать?Зачем определять архитектуру в cmake для генераторов с несколькими конфигурациями
Благодаря
Это ограничение CMake, а также вид преднамеренным. См. Здесь: http://stackoverflow.com/questions/5334095/cmake-multiarchitecture-compilation упоминается, что cmake хочет создавать разные каталоги сборки для каждого компилятора, а 32 и 64-битные компиляции рассматриваются как с другой средой компилятора/компилятора. Также cmake поощряет сборку вне источников, поэтому вы не можете объединить 64 и 32 в VS с этой филисофией. – Hayt
@ Hayt спасибо за ответ, пожалуйста, разместите его как ответ, и я его приму. –