./test/calculator_test: ошибка при загрузке общих библиотек: ../../../ Third_party/ add/lib/add.so: невозможно открыть файл общего объекта: такого файла или каталога нет
Дерево файлов (я удалил ненужную часть):
Код: Выделить всё
├── CMakeLists.txt
├── build
├── src
├── test
│ ├── CMakeLists.txt
│ └── calculator
│ ├── CMakeLists.txt
│ └── calculator_test.cpp
└── third_party
├── add
│ ├── include
│ │ └── add.h
│ └── lib
│ └── add.so
└── googletest
...
Код: Выделить всё
test/calculator/CMakeLists.txt:
add_library(lib-add SHARED IMPORTED)
set_target_properties(lib-add
PROPERTIES
IMPORTED_LOCATION "${PROJECT_SOURCE_DIR}/third_party/add/lib/add.so"
INTERFACE_INCLUDE_DIRECTORIES "${PROJECT_SOURCE_DIR}/third_party/add/include"
)
add_executable(calculator_test calculator_test.cpp)
target_link_libraries(calculator_test PRIVATE lib-add lib-sub)
set_target_properties(calculator_test
PROPERTIES
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/test"
COMMAND calculator_test
)
Подробнее здесь: https://stackoverflow.com/questions/768 ... b-on-linux
Мобильная версия