cmake:目标链接库- /usr/bin/ld:找不到X没有这样的文件或目录

pdkcd3nj  于 2022-11-11  发布在  其他
关注(0)|答案(1)|浏览(497)

我正尝试在项目中包含此库:https://github.com/kuafuwang/LspCpp.git
我使用的是FetchContent,它成功地填充了_deps/lsccpp-build、_deps/lsccpp-src、_deps/lsccpp-subbuild:

FetchContent_Declare(
    lspcpp
    GIT_REPOSITORY https://github.com/kuafuwang/LspCpp.git
)
FetchContent_GetProperties(lspcpp)
if(NOT lspcpp_POPULATED)
    FetchContent_Populate(lspcpp)
endif()

我定义了可执行文件:

add_executable(myApp
                foo.cpp
                bar.cpp
                ...
)

并试着将它联系起来:

target_include_directories(myApp lspcpp)
target_link_libraries(myApp lspcpp)

这将产生以下错误:

/usr/bin/ld: cannot find -llspcpp: No such file or directory
ohtdti5x

ohtdti5x1#

缺少FetchContent的一个步骤,无法生成库。

FetchContent_Declare(
    lspcpp
    GIT_REPOSITORY https://github.com/kuafuwang/LspCpp.git
)
FetchContent_GetProperties(lspcpp)
if(NOT lspcpp_POPULATED)
    FetchContent_Populate(lspcpp)
    add_subdirectory(${lspcpp_SOURCE_DIR} ${lspcpp_BINARY_DIR}) # add this line
endif()

相关问题