Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 创建静态库打包所有依赖项_C++_Cmake - Fatal编程技术网

C++ 创建静态库打包所有依赖项

C++ 创建静态库打包所有依赖项,c++,cmake,C++,Cmake,我有一个用于创建静态库的CMakeLists.txt,我想将它与它所需的所有依赖项打包,以便我的库的用户不需要下载它所依赖的库 e、 例如,我的lib依赖于OpenCV,所以我不希望我的用户为了使用我的lib而下载OpenCV 我怎样才能做到这一点 现在,我有以下几点: file(GLOB LIB_SOURCES *.cpp ) include_directories(include) include_directories(tools) add_library(myLib STA

我有一个用于创建静态库的CMakeLists.txt,我想将它与它所需的所有依赖项打包,以便我的库的用户不需要下载它所依赖的库

e、 例如,我的lib依赖于OpenCV,所以我不希望我的用户为了使用我的lib而下载OpenCV

我怎样才能做到这一点

现在,我有以下几点:

file(GLOB LIB_SOURCES
    *.cpp
)


include_directories(include)
include_directories(tools)

add_library(myLib STATIC ${LIB_SOURCES})
target_link_libraries(myLib ${OpenCV_LIBS})

这可能是一个巨大的努力和问题。您必须为所有可能的平台(如linux、win、mac)以及所有可能的编译器(gcc、clang、vc++)和体系结构(x86、x86_64)提供所有库。@ollo的想法是只提供我的动态库,在ITU中定义了所有符号后,您可以始终使用库/依赖项目标/
*\u LIBS
变量访问路径。也许这也能帮助你: