微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

介子找不到cmake子目录

如何解决介子找不到cmake子目录

在我的一个 meson.build 文件中,我有代码需要为 spdlog 生成依赖项。

libspd = cmake.subproject('spdlog')
spd_dep = libspd.dependency('spd_dep')

有问题的 meson.build 位于名为 vendor 的目录中,spdlog 目录也位于其中。

./
  ...
  vendor/
    meson.build
    spdlog/
      CMakeLists.txt
      ...

但是,当我配置项目时,介子抛出此错误Neither a subproject directory nor a spdlog.wrap file was found.。为什么是这样?显然,spdlog 目录与meson.build 中的目录位于同一目录中,对吗?

另外,我知道我应该使用包装文件,但由于限制,这是不可能的。我也在 IRC 上问过,但没有人回复,而且我在截止日期前。

解决方法

介子为子项目预定义了位置 - All subprojects must be in subprojects directory。所以,你应该有结构:

  vendor/
    meson.build
    subprojects/
      spdlog/
        CMakeLists.txt

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。