生成的C++;使用MATLAB编码器的代码:编译错误“;未定义对“rgb2gray”的引用&引用; 利用MATLAB编码器生成的图像转换为灰度级的C++代码。在编译DeV C++时,它显示了错误->代码>未定义的引用到RGB2Gray-TBBJReal64 < /P>

生成的C++;使用MATLAB编码器的代码:编译错误“;未定义对“rgb2gray”的引用&引用; 利用MATLAB编码器生成的图像转换为灰度级的C++代码。在编译DeV C++时,它显示了错误->代码>未定义的引用到RGB2Gray-TBBJReal64 < /P>,c++,matlab,matlab-coder,C++,Matlab,Matlab Coder,其中一个生成的代码使用头文件libmwrgb2gray\u tbb.h。它调用一个函数rgb2gray\u tbb\u real64,该函数在任何地方都没有定义 如何解决此问题?图像处理工具箱代码生成支持两种不同的模式: 生成的代码使用特定于平台的优化共享库。这是为MATLAB编码器硬件目标MATLAB主机和一些其他类似目标启用的 生成的代码是独立的、独立于共享库的、可移植的 本文将更详细地介绍这些概念。使用选项(1)时,必须使用编码器实用程序打包生成的代码,以便重新定位它。MATLAB编码器知

其中一个生成的代码使用头文件
libmwrgb2gray\u tbb.h
。它调用一个函数
rgb2gray\u tbb\u real64
,该函数在任何地方都没有定义


如何解决此问题?

图像处理工具箱代码生成支持两种不同的模式:

  • 生成的代码使用特定于平台的优化共享库。这是为MATLAB编码器硬件目标
    MATLAB主机
    和一些其他类似目标启用的
  • 生成的代码是独立的、独立于共享库的、可移植的
  • 本文将更详细地介绍这些概念。使用选项(1)时,必须使用编码器实用程序打包生成的代码,以便重新定位它。MATLAB编码器知道如何正确收集和打包生成代码的所有依赖项

    要进行此打包,您可以使用
    packNGo
    功能,使用MATLAB编码器应用程序的
    Finish Workflow
    屏幕上的
    Package
    按钮,或MATLAB编码器报告中的
    Package code
    按钮。有关这些步骤的详细信息,请参见。要使用
    packNGo
    ,您可以:

    codegen myFunction-args{1,2,3}-config:lib-report
    加载(fullfile('codegen','lib','myFunction','buildInfo.mat');
    packNGo(buildInfo,'fileName','myFunction.zip');
    

    这将在当前目录中创建
    myFunction.zip
    ,其中将包含生成的代码以及它所依赖的所有标题和库。然后,您可以将所有这些内容导入您选择的IDE。

    请不要发布代码图像和错误消息。相反,将它们复制粘贴到你的问题中。图像不可搜索,也不容易(或不可能)为视觉残疾人士阅读。关于您的问题:您是否遵循编码器中有关在适当库中链接的说明?看起来需要链接一个库。