How can I avoid "Unsupported custom layer" error during Code Generation using %#codegen pragma in MATLAB R2025a?

조회 수: 6 (최근 30일)

While generating C code for my "tf_predict.m" MATLAB function which loads and calls my neural network to produce output predictions, I encountered this error:

"Unsupported custom layer 'kConcatenate1Layer789'."

Code generation does not support custom layers without '%#codegen' defined in the class definition.

Does this mean the custom concatenate layer is unsupported by MATLAB Coder? How do I fix it?

채택된 답변

MathWorks Support Team
MathWorks Support Team 2025년 8월 28일 0:00
This is expected. This error indicates that your custom layer "kConcatenate1Layer789" lacks the required "%#codegen" pragma in its class definition.
This has nothing to do with the built-in concatenation operation, but rather that the custom layer class must be explicitly marked for code generation as described in this MathWorks documentation for defining custom layers for code generation.
Add the pragma like this:
classdef kConcatenate1Layer789 < nnet.layer.Layer %#codegen ... end
Also, I suggest running the following code to verify full compatibility of your network with C code generation. This can flag layers and syntax which is not supported for code generation.
analyzeNetworkForCodegen('<model>.mat')

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Input Specification에 대해 자세히 알아보기

제품


릴리스

R2025a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by