Папка CMake Visual Studio 'Debug' - PullRequest
       6

Папка CMake Visual Studio 'Debug'

3 голосов
/ 29 августа 2011

Visual Studio настаивает на том, что при использовании CMake она должна создавать исполняемые файлы в bin / Debug / вместо просто bin /.Есть ли способ это исправить?

1 Ответ

2 голосов
/ 29 августа 2011

Да, но не очень красиво ...

Вам потребуется обновить RUNTIME_OUTPUT_DIRECTORY , LIBRARY_OUTPUT_DIRECTORY и ARCHIVE_OUTPUT_DIRECTORY для ALL ваших целей. И вам нужно будет сделать это для каждой конфигурации (Debug, RelWithDebInfo и т. Д.)

Самый простой способ - сделать это "глобально" с их эквивалентами CMAKE _... Например. проверьте следующий пример, который устанавливает bin / и lib / в качестве «глобальных» выходных каталогов двоичных файлов / библиотек:

# First for the generic no-config case (e.g. with mingw)
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib )
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib )
# Second, for multi-config builds (e.g. msvc)
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
    string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
    set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/bin )
    set( CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/lib )
    set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} ${CMAKE_BINARY_DIR}/lib )
endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )

В качестве альтернативы, вы можете попытаться пройти через все доступные цели и изменить их свойства впоследствии ...

Обратите внимание, что это не устанавливает местоположение ваших файлов .pdb. Я до сих пор не нашел удовлетворительного способа поместить все соответствующие файлы .pdb в каталог bin /.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...