Файл карты создается компоновщиком и обычно отключен по умолчанию . Чтобы включить создание файла карты, должна быть предоставлена опция компоновщика /MAP
. Когда я тестировал с /MAP
, флаг компилятора /Fm
, определяющий имя пути к файлу карты, был проигнорирован, и файл карты был создан с именем по умолчанию рядом с двоичным файлом.
Однако вы также можете указать имя файла карты, добавив его к параметру компоновщика /MAP
. В CMake вы можете указать параметры ссылки для конкретной цели c, используя target_link_options
:
cmake_minimum_required(VERSION 3.13)
project(cmake_testapp)
set(CMAKE_CXX_STANDARD 14)
MESSAGE("TEST_HELLO")
MESSAGE(${CMAKE_CXX_COMPILER})
add_executable(cmake_testapp loaderstack.cpp)
# Set the coverage flags for the cmake_testapp executable only.
target_link_options(cmake_testapp PRIVATE "/MAP:${PROJECT_SOURCE_DIR}/file.map")