Я создал общую библиотеку с library.h и library.cpp.Затем написал файл CMakeLists.txt, чтобы построить его как общую библиотеку.
CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(test_pro)
set(CMAKE_CXX_STANDARD 11)
add_library(test_pro SHARED library.cpp library.h)
после сборки библиотеки я смог получить файл .so как /home/user/projects/test_lib/bin/libtest_pro.so
Затем я попытался связать созданную библиотеку с другим проектом в /home/user/projects/testproject
CMakeLists.txt
cmake_minimum_required(VERSION 3.10)
project(testproject)
set(CMAKE_CXX_STANDARD 11)
link_directories(
/home/user/projects/test_lib/bin
)
add_executable(testproject main.cpp)
target_link_libraries (testproject test_pro)
Он успешно создает тестовый проект (команда ldd показывает, что он имеетправильно), но я не могу использовать созданную в нем библиотеку.
В main.cpp
, который я пробовал,
#include "library.h"
#include "test_pro"
#include <test_pro>
#include <test_pro/library.h>
Но все вышеперечисленное привело к сбоям сборки (fatal error: xxx: No such file or directory
).Как мне использовать эту созданную библиотеку?