In some embedded systems, static initialization is not set up to happen automatically. This goes against C specifications, but sometimes that's the way it is. Note that this may be true for both data and bss segments i.e. you may find that uninitialized statics may NOT be initialized to zero either.
The solution to this is, unfortunately, system specific. You may find something in your complier system documentation that lets you invoke the initialization of the static elements.