0

我有一个简单的项目来从 azure sdk 获取深度帧。但实际上cmake有一些问题。

所以这是一个简单的可重复代码;

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <k4a/k4a.h>
#include <k4arecord/record.h>
#include <iostream>

using namespace cv;

//pleace check unused error
int main(int argc, char **argv){
    std::cout << argc << std::endl;
    // initial-open device
    uint32_t count = k4a_device_get_installed_count();
    std::cout << "device number: " << count << std::endl;
    k4a_device_t device = NULL;
    k4a_capture_t capture = NULL;
    const int32_t TIMEOUT_IN_MS = 1000;
    if ( K4A_FAILED( k4a_device_open(K4A_DEVICE_DEFAULT, &device) ) )
    {
        printf("Failed to open k4a device!\n");
        exit(1);
    }
return
 0} 

那是我的cmake文件:

cmake_minimum_required(VERSION 3.1)
project(Demo)
find_package(k4a REQUIRED)
# Find OpenCV
find_package(OpenCV REQUIRED)
 
#Includes
include_directories( ${CMAKE_CURRENT_LIST_DIR} )
#include_directories( ${OpenCV_INCLUDE_DIRS} )
add_executable(
    Demo main.cpp 
)
 
target_link_libraries(Demo k4a::k4a k4a::k4arecord  ${OpenCV_LIBS})

# Enable C++11
set(CMAKE_CXX_FLAGS "-std=c++11")
set(CMAKE_CXX_STANDARD_REQUIRED TRUE)

所以,我知道,我的 CMakeLists 完全错误,我的问题是如何编写 cmake 文件以将 azure-sdk 包含到我的项目中?

我收到以下错误:

找不到由“k4a”提供的具有以下任何名称的包配置文件:

k4aConfig.cmake
k4a-config.cmake
4

0 回答 0