在Simulink的自定义代码部分中包含库

时间:2015-01-29 07:49:26

标签: c matlab simulink matlab-coder

我试图在Simulink的自定义代码库部分中包含一些库,例如metis。你知道Simulink除了什么类型的库吗?他们必须有结尾.a.o.dlllib吗?  我可以将它们包含在#include <metis.h>的自定义c代码中吗?

1 个答案:

答案 0 :(得分:2)

库格式应与您要编译生成代码的体系结构相匹配。对于GNU / Linux,.a.so,对于Windows,.lib(通常链接到.lib文件而不是.dll),通常是{{1}在Mac上。您还可以链接目标文件(即.dylib),但通常软件包会构建某种类型的库供您使用。

如果您正在使用任何.o, .obj标头中定义的任何功能,类型等,那么这些标头需要包含在生成的代码中。

您可以将metis添加到设置中:

#include "header_name.h"

"Configuration Parameters->Simulation Target->Custom Code->Header File"

其中"Configuration Parameters->Code Generation->Custom Code->Header File" 替换为所需的头文件名称。

由于此问题已标记为header_name.h,您还可以在MATLAB代码中使用MATLAB Coder在C代码中生成coder.cinclude('header_name.h');

您可能还需要在前面提到的#include "header_name.h"窗格中增加Include directories设置,以允许编译器找到标题。