Why not just put the call in the constructor of a "dummy" global object?
Those get constructed (from a single thread) as part of loading the dynamic library (or for applications, before "main" is called). The only thing you have to worry about with such global constructors is that their order can be quite unpredictable... but I don't see why that would really be an issue here.