When running with a libica version without commit https://github.com/opencryptoki/libica/commit/42e197f61b298c6e6992b080c1923e7e85edea5a it is necessary to explicitly initialize OpenSSL before loading libica. Because otherwise libica's library constructor will initialize OpenSSL the first time, which in turn will load the IBMCA provider, and it will fall into the same problem as fixed by above libica commit, i.e. the provider won't be able to get the supported algorithms from libica an thus will not register any algorithms.
When running with a libica version without commit https://github.com/opencryptoki/libica/commit/42e197f61b298c6e6992b080c1923e7e85edea5a it is necessary to explicitly initialize OpenSSL before loading libica. Because otherwise libica's library constructor will initialize OpenSSL the first time, which in turn will load the IBMCA provider, and it will fall into the same problem as fixed by above libica commit, i.e. the provider won't be able to get the supported algorithms from libica an thus will not register any algorithms.