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

如何让cmake检测nix安装的C ++库

如何解决如何让cmake检测nix安装的C ++库

这是我的目录中的default.nix:

{ pkgs ? (import <nixpkgs> {}),source ? ./.
 }:
 with pkgs;
 stdenv.mkDerivation rec {
    name = "vulkan_play";
    version = "0.1.0";
    src = lib.cleanSource source;

    nativeBuildInputs = [cmake pkgconfig];
    buildInputs =[
        vulkan-headers
        vulkan-loader
        glfw
        boost];

这是我的cmake

cmake_minimum_required(VERSION 3.17)
project(vulkan_play)
add_subdirectory(lib)
add_subdirectory(main)


set(CMAKE_CXX_STANDARD 20)
set(GLFW_BUILD_DOCS OFF CACHE BOOL "GLFW lib only")
set(GLFW_INSTALL OFF CACHE BOOL "GLFW lib only")

我必须在cmake中放入什么才能找到已被放大的boost和glfw(由于某种原因它可以找到vulkan,不确定原因)。

当我运行nix-shell时,以上大部分工作都有效,路径中存在相关性,我只需要CMAKE即可检测这些库而无需指定nix-store目录。

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