C++ CMake不';我找不到自编库
背景: 我正在另一个项目中编译一个共享C库,需要与CMake链接。 我使用了一个基于C的神经网络实现来训练一个定制的对象检测器 实际上,darknet是一个独立的C可执行文件。但是我需要把检测器集成到一个更大的C++代码库中。 我已经找到一个小的。 现在,我想将包装器代码转换成一个CMake项目,将darknet编译成一个共享库并与之链接C++ CMake不';我找不到自编库,c++,c,gcc,makefile,cmake,C++,C,Gcc,Makefile,Cmake,背景: 我正在另一个项目中编译一个共享C库,需要与CMake链接。 我使用了一个基于C的神经网络实现来训练一个定制的对象检测器 实际上,darknet是一个独立的C可执行文件。但是我需要把检测器集成到一个更大的C++代码库中。 我已经找到一个小的。 现在,我想将包装器代码转换成一个CMake项目,将darknet编译成一个共享库并与之链接 我已经使用编译器标志-fPIC和-shared将其编译到一个共享库中 输出名为darknet,我将其重命名为darknet.so,并将其复制到/usr/li
- 我已经使用编译器标志
和-fPIC
将其编译到一个共享库中-shared
- 输出名为
,我将其重命名为darknet
,并将其复制到darknet.so
/usr/lib/
sudo ldconfig
CMakeLists.txt
。如你所见,我正在链接到黑暗图书馆。编译时出现错误,找不到库
CMAKE_MINIMUM_REQUIRED(VERSION 3.0.0)
project(wrapper)
add_definitions(-std=c++14)
find_package(OpenCV 3.2.0 EXACT REQUIRED)
include_directories(
${OpenCV_INCLUDE_DIRS}
example
wrapper
darknet_src
)
SET(SOURCES
example/main.cpp
wrapper/darknet.cpp
wrapper/darknet.h
wrapper/darknet_detector.c
wrapper/darknet_detector.h)
add_executable(wrapper ${SOURCES})
target_link_libraries(wrapper darknet ${OpenCV_LIBS})
darknet,so
或libdarknet.so
?darknet.so是一个错误的名称。让它成为libdarknet.so.真正的问题-CMake找不到库,对吗?如果是这样,你的CMakeLists.txt
是帖子中最有价值的信息,应该在问题帖子中,而不是链接。此外,请确保已搜索实际问题的描述。例如,您可能会发现有用。@MSalters,您是对的。这确实是问题所在。我仍然有编译问题,但这可能是另一个问题。@Tsyvarev,当我问这个问题时,我不知道实际的问题。我想我会把问题完全更新为“CMake没有找到库”,并删除其他细节darknet,so
或libdarknet.so
?darknet.so是一个错误的名称。让它成为libdarknet.so.真正的问题-CMake找不到库,对吗?如果是这样,你的CMakeLists.txt
是帖子中最有价值的信息,应该在问题帖子中,而不是链接。此外,请确保已搜索实际问题的描述。例如,您可能会发现有用。@MSalters,您是对的。这确实是问题所在。我仍然有编译问题,但这可能是另一个问题。@Tsyvarev,当我问这个问题时,我不知道实际的问题。我想我会完全更新这个问题,改为“CMake没有找到库”,并删除其他细节