Existe uma maneira elegante de evitar o dlsym ao usar o dlopen em C?

Preciso abrir dinamicamente uma biblioteca compartilhadalib.so se uma condição específica for atendida em tempo de execução. A biblioteca contém ~ 700 funções e eu preciso carregar todos os seus símbolos.

Uma solução simples é definir os ponteiros de função para todos os símbolos contidos emlib.so, carregue a biblioteca usandodlopen e, finalmente, obtenha os endereços de todos os símbolos usandodlsym. No entanto, dado o número de funções, o código que implementa esta solução é muito complicado.

Eu queria saber se existe uma solução mais elegante e concisa, talvez com um uso apropriado de macros para definir os ponteiros de função. Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion