QT5.9.4中部署librealsense开发环境

0 开发环境
1.librealsense版本 2.11.0
2.QT版本5.9.4
3.编译器vs2015
1 配置
头路径
属性页->C/C++->附加包含目录 C:\Program Files (x86)\Intel RealSense SDK 2.0\include
头文件
#include
lib路径
属性页->链接器->常规->附加库目录 C:\Program Files (x86)\Intel RealSense SDK 2.0\lib\x64
lib文件
属性页->链接器->输入->附加库依赖项 realsense2.lib
dll路径
属性页->调试->环境 PATH=C:\Program Files (x86)\Intel RealSense SDK 2.0\bin\x64%3b
dll文件
realsense2.dll
2 代码冲突及修改
rs_frame.hpp中的 frameset问题
QT5.9.4中部署librealsense开发环境_第1张图片
问题原因
这段代码使用了foreach,foreach并不属于C++标准语法,QT和realsense分别定义了foreach,两个foreach定义出现了冲突。
frame first_or_default( rs2_stream s) const
{
frame result;
foreach([& result, s]( frame f) {
if (! result && f. get_profile(). stream_type() == s)
{
result = std::move( f);
}
});
return result;
}
修改方法
  1. 将realsense的rs_frame.hpp中的 frameset中的3个foreach改一个名字,如foreach_rs。
  2. 重新编译librealsense代码,生成lib和dll。
  3. 替换C:\Program Files (x86)\Intel RealSense SDK 2.0\bin目录下realsense2.lib和realsense2.dll
  4. 替换过程注意64bit/32bit和debug/release版本一致。

你可能感兴趣的:(realsense,Qt5)