gpt4 book ai didi

c++ - 如何链接由 cmake 在其他目录上生成的库?

转载 作者:行者123 更新时间:2023-11-28 04:41:52 28 4
gpt4 key购买 nike

假设我有一个项目有它自己的CMakeLists.txt:

project/CMakeLists.txt

我需要将另一个 Cmake 项目编译成一个库,以便在我的项目中使用。这个其他项目已经有自己的 CMakeLists.txt,它非常复杂,我想使用它而不是指定如何在我自己的 CMakeLists.txt 中构建这个库。

这似乎是唯一的方法:

add_subdirectory(/path/to/my/other/project folder_in_my_project)

但它不会先构建外部项目,所以我可以使用它生成的 在 folder_in_my_project 中生成的库。

要先建的,但是因为线的关系不会建

add_library(libjrtp STATIC IMPORTED)
SET_PROPERTY(TARGET libjrtp PROPERTY IMPORTED_LOCATION jrtplib/src/libjrtp.a)

它需要 libjrtp.a,但 libjrtp.a 只会在所有内容构建完成后构建。

我知道我在这里问得太多了,但是在 cmake 文档上没有关于这种行为的文档

最佳答案

您需要将库添加为依赖项。

add_dependencies(libjrtp)

关于c++ - 如何链接由 cmake 在其他目录上生成的库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50024913/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com