使用 MATLAB 编码器生成C++代码:编译错误"undefined reference to `rgb2gray_tbb_real64'"
Generated C++ code using MATLAB Coder : Compilation Error "undefined reference to `rgb2gray_tbb_real64'"
使用MATLAB编码器从MATLAB生成C++代码,用于将图像转换为灰度。在Dev C++上编译时,它显示错误-undefined reference to rgb2gray_tbb_real64
其中一个生成的代码使用头文件libmwrgb2gray_tbb.h
。Screenchot它调用一个函数rgb2gray_tbb_real64
,该函数在任何地方都没有定义。
如何解决这个问题?
图像处理工具箱代码生成支持两种不同的模式:
- 生成的代码使用特定于平台的优化共享库。这对于MATLAB编码器硬件目标
MATLAB Host Computer
和其他一些类似目标是启用的 - 生成的代码是独立的,独立于共享库,并且是可移植的
文档更详细地介绍了这些概念。使用选项(1(时,必须使用编码器实用程序对生成的代码进行打包,以便重新定位。MATLAB编码器知道如何正确收集和打包生成代码的所有依赖项。
要进行此打包,您可以使用packNGo
函数,使用MATLAB编码器应用程序Finish Workflow
屏幕上的Package
按钮,或MATLAB编码器报告中的Package Code
按钮。MATLAB编码器文档中详细介绍了这些步骤。要使用packNGo
,您可以:
codegen myFunction -args {1,2,3} -config:lib -report
load(fullfile('codegen','lib','myFunction','buildInfo.mat'));
packNGo(buildInfo, 'fileName', 'myFunction.zip');
这将在当前目录中创建myFunction.zip
,其中将包含生成的代码以及它所依赖的所有头文件和库。然后,您可以将所有这些导入到您选择的IDE中。
相关文章:
- 在C++STL中是否有Polyval(Matlab函数)等价物?
- 有可能在Armadillo中复制MATLAB circshift方法吗
- 使用 MATLAB 编码器生成C++代码:编译错误"undefined reference to `rgb2gray_tbb_real64'"
- MATLAB to C++: csvread() not supported by MATLAB Coder
- 加载由 MATLAB Coder 生成的带有函数的 DLL,该函数调用外部函数
- MATLAB:跟踪imufilter对象中的状态变化
- 如何将 c++ 中的客户端 TCP 的替身列表发送到 Matlab 中的 TCP 服务器?
- 将三角函数的正确值与matlab进行比较
- 连接 MATLAB 和 Visual Studios 的问题
- 如何将C++连接到 Matlab
- 如何发送 Mat H=findHomography 返回 Matlab
- 如何在C++中编写 MATLAB fix(X) 函数?
- 提供变量作为 MATLAB 系统命令的输入参数,以便C++可执行文件
- 有没有更好的方法可以使用特征/C++实现 matlab 的逻辑索引?
- 当我运行MEX文件时,MATLAB崩溃
- 从 MATLAB 到 C++:相当于带有选项 'remove' 的 bwmorph
- MATLAB的imfinfo in openCV
- 将C++中的多个参数传递给MatLab共享库函数
- 将 matlab 数组(MAT-文件)转换为C++数组
- 数组数据以错误的方式遍历 Python/Matlab