CMakeError:Cannot specify link libraries for target “xxxx“ which is not built by this project.

Cannot specify link libraries for target “xxxx“ which is not built by this project.

翻译这句话

无法为不是由此项目构建的目标“xxxx”指定链接库。

想可能的原因

分析的主要是在于构建的目标,不是此项目的。

  • 没有target:也就是说在target_link_library之前,没有任何add_executable或者add_library语句。
    • 可能是没有add_executable或者add_library语句
    • 也有可能是add_executable或者add_library语句在target_link_library之后。
  • 有target:也就是说在target_link_library之前,有add_executable或者add_library语句。
    • 可能是目标名不一致

解决方法

  • 没有target:添加add_executable或者add_library语句;将add_executable或者add_library语句放到设置库文件的target_link_library之前。
  • 有target:修改target目标与add_executable或者add_library语句的target一致

你可能感兴趣的:(cmake,c++)