gpt4 book ai didi

c++ - 在与 CMakeLists.txt 相同的目录中找不到共享库

转载 作者:行者123 更新时间:2023-11-30 01:50:12 26 4
gpt4 key购买 nike

在我的源代码目录中,我有一个名为libAlpha.so 的共享库文件。然后,在我的 CMakeLists.txt 文件中,我有:

target_link_libraries(MyProgram Alpha)

但是,这给了我错误:

usr/bin/ld: cannot find -lAlpha

如果我将库文件重命名为 Alpha.solAlpha.so,我会得到同样的错误。同样,如果我改为使用以下行:

target_link_libraries(MyProgram libAlpha)

或:

target_link_libraries(MyProgram libAlpha.so)

为什么cmake找不到这个库,即使它和CMakeLists.txt在同一个目录下?

最佳答案

不要使用link_directories

指定库的完整路径(可能使用 ${CMAKE_CURRENT_SOURCE_DIR} 如果你有它,或者使用 find_library 路径和名称(没有 code>lib 前缀或扩展名)以获得“更便携”的解决方案,尽管有些事情告诉我可移植性不是你关心的......

关于c++ - 在与 CMakeLists.txt 相同的目录中找不到共享库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27826037/

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