En tiempo de ejecución necesito imprimir una dirección, y luego buscar de qué función forma parte esa dirección. Las funciones están en una biblioteca compartida, por lo que no están en una dirección fija. Mi archivo de mapa obviamente solo muestra los desplazamientos relativos para cada función de biblioteca compartida. ¿Es posible en tiempo de ejecución consultar dónde se ha cargado una biblioteca, de modo que pueda restar ese valor de mi dirección para obtener el desplazamiento correcto del archivo de mapa?Encontrar la dirección de carga de una biblioteca compartida en Linux
Actualmente estoy haciendo un acercamiento ligeramente hacky por el cual también imprimo la dirección de una función en la biblioteca, luego encuentro esa función en el archivo de mapa para averiguar dónde debe estar la dirección de carga. Preferiría tener un método genérico que no requiriera que nombraras una función de referencia.
(GDB no está disponible en mi configuración). Gracias.