Diameter_exprecs : undef_parse_transform

Hi There,

I’m putting together a docker image with a release and in that release I want to be using diameter and specifically diameterc to compile message definitions.

In my local docker image everything works fine but in my release version inside my docker image, when I’m compile the generated file, each time I get this:

      [
        {:none,
         :compile,
         {:undef_parse_transform,
          :diameter_exprecs}}
      ],

The file I’m compiling was generated via diameterc and contains:

-compile({parse_transform, diameter_exprecs}).

The docker image I’m using has a base of erlang:27.3.0.0 and it seems that it’s diameter 2.4.1 that’s installed.

Do I need to include_src when I build my release or is there some other magic that needs doing?

Also I can generate the file inside the docker image, i.e. diameterc does run.

Cheers!

Got this working by compile the transformer with my code, inside the docker image did this:

RUN cp /usr/local/lib/erlang/lib/diameter-2.4.1/src/compiler/diameter_exprecs.erl src/
RUN cp /usr/local/lib/erlang/lib/diameter-2.4.1/src/compiler/diameter_forms.hrl src/

then built the release of my application. Later the compiler found the transformer.