Я строю цель, которая зависит от некоторых предоставленных библиотек.Моя иерархия каталогов src выглядит следующим образом:
Я использую следующее CMakeLists.txt
для создания цели и установки ее в каталоге build/install
:
cmake_minimum_required(VERSION 2.8.3)
project(example)
include_directories(include)
link_directories(lib)
add_executable(${PROJECT_NAME}
src/example.cpp)
target_link_libraries(${PROJECT_NAME}
curlpp)
set(CMAKE_INSTALL_PREFIX ${CMAKE_CURRENT_BINARY_DIR}/install)
install(TARGETS ${PROJECT_NAME}
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION bin
)
install(FILES lib/libcurlpp.a lib/libcurlpp.so lib/libcurlpp.so.1 lib/libcurlpp.so.1.0.0 DESTINATION deps)
Когда я делаю простой build
, все в порядке, и цель правильно связана с предоставленными библиотеками.Но когда я делаю make install
, цель генерируется, но не может связываться с библиотеками:
Я понимаю сбой связи установленной цели: каталог install/deps
не в LD_LIBRARY_PATH
моего окружения.Но что сделал cmake, чтобы правильно создать прямую целевую ссылку?Могу ли я сделать что-то подобное, чтобы заставить установленную цель работать правильно?
Вот минимальная копия проблемы