GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué nm no muestra símbolos para /lib/i386-linux-gnu/libc.so.6?

Probablemente haya eliminado sus símbolos regulares y lo que queda son sus símbolos dinámicos, que puede obtener con nm -D .


@PSkocik respondió esto. Solo quiero agregar más detalles. Hay dos tipos de secciones de símbolos en ELF:.symtab y .dynsym (Consulte la especificación de núcleo base estándar de Linux, también conocida como LSB_5.0.0, para obtener más detalles). .symtab es para el paso de vinculación de la propia biblioteca compartida. Una vez finalizada la vinculación, el .symtab la sección ya no es necesaria. El .dynsym La sección contiene símbolos importantes que se supone que debe buscar el vinculador dinámico en tiempo de ejecución. nm por defecto solo volca símbolos en el .symtab sección.

LSB_5.0.0 Sección 10.2.2.1, "Tipos de sección ELF", dice que una biblioteca compartida conforme debe tener .symtab o .dynsym pero no ambos. Como parte de la biblioteca ABI, libc se elimina del .symtab para cumplir con las especificaciones.


Linux
  1. ¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

  2. Bash =~ Regex y Https://regex101.com/?

  3. ¿Por qué find -exec mv {} ./target/ + no funciona?

  4. Instalar binarios en /bin, /sbin, /usr/bin y /usr/sbin, interacciones con --prefix y DESTDIR

  5. ¿Cuándo debo usar /dev/shm/ y cuándo debo usar /tmp/?

unix:///var/run/supervisor.sock no hay tal archivo

¿Por qué poner otras cosas que no sean /home en una partición separada?

¿Cómo configurar el swapiness por proceso para Linux?

¿Por qué los directorios /home, /usr, /var, etc. tienen todos el mismo número de inodo (2)?

¿Por qué se requieren < o > para usar /dev/tcp?

Diferencia y uso correcto de /tmp y /var/tmp