как указать путь к зависимому исходному файлу библиотеки в CMake - PullRequest
0 голосов
/ 04 марта 2019

Мы можем использовать target_link_libraries для указания библиотек при связывании заданной цели.

Мне интересно, есть ли способ указать путь к исходному файлу библиотеки (файл cpp)?(не заголовочный файл, который можно установить с помощью target_include_directories)

Поскольку некоторые средства отладки (cgdb, gdbgui) не могут найти исходный файл зависимой библиотеки.(Все цели и библиотеки скомпилированы с опцией отладки.)

В настоящее время я должен добавить исходный файл библиотеки к основной цели при отладке.

myproj CMakeLists.txt

cmake_minimum_required(VERSION 3.9 FATAL_ERROR)                                                                                                                          
set(PORJ_NAME myproj)
project(${PORJ_NAME})

add_executable(${PORJ_NAME}
        main.cpp 
        ...
)
target_link_libraries (${PORJ_NAME}
    PRIVATE
        /proj_math/libmathcore.so
        ...
)

mathcore CMakeLists.txt (находится по пути, отличному от myproj)

cmake_minimum_required(VERSION 3.9 FATAL_ERROR)                                                                                                                          
set(PORJ_NAME mathcore)
project(${PORJ_NAME})

add_library(${PORJ_NAME}
         src/mathcore.cpp  # change to absolute path won't work either
        ...
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...