Question: The voltage generated in the transformer must be due to the change in the flux in the coils, but if the voltage is DC, why is no voltage induced?

Of course, we know that voltage is created by the derivative of flux, but what does it mean?

Answer: 
Mathematically speaking, "derivative" means "rate of change". In *steady state*, DC does not change, the magnitude of the flux does not change, and the "derivative" = 0, so induced voltage is zero, and the "transformer" is reduced to the role of an electromagnet.
It seems like you might not understand a basic property of transformers, related to the term `Flux`. Flux is `change`. An AC voltage is one that changes. A DC voltage is one that stays steady (does not change).

If you apply a changing AC voltage to one winding, the flux (change) in the voltage allows the transformer to propagate energy into the other winding, and you get an output AC voltage. If you apply a steady DC voltage to one winding, the lack of flux prevents the transformer from propagating energy into the other winding, and you do not get an output voltage.