GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué hace la función débil_alias y dónde se define?

de https://github.com/lattera/glibc/blob/master/include/libc-symbols.h

/* Define ALIASNAME as a weak alias for NAME.
   If weak aliases are not available, this defines a strong alias.  */
# define weak_alias(name, aliasname) _weak_alias (name, aliasname)
# define _weak_alias(name, aliasname) \
  extern __typeof (name) aliasname __attribute__ ((weak, alias (#name)));

Acerca del símbolo débil:

https://en.wikipedia.org/wiki/Weak_symbol


Es una macro que hace lo siguiente:

Declara una función débil, si no proporcionó un nombre de símbolo fuerte para esa función, llamará a la función a la que lo ha asignado. por ejemplo

int _foo(){ return 1;}

//And weak alias
int __attribute__((weak, alias("_foo"))) foo();

Entonces, si no ha proporcionado una implementación real para foo, básicamente usará _foo y devolverá 1.


Linux
  1. ¿Cuál es la diferencia entre InnoDB y MyISAM?

  2. ¿Qué es un servidor web y cómo funciona un servidor web?

  3. ¿Qué significa Env X=() { ::}; Command' Bash Do y por qué es inseguro?

  4. ¿Qué significa en la salida de Ps?

  5. El Punto De Uniq -u Y Que Hace??

¿Cuál es la diferencia entre Linux y Unix?

¿Qué son estos caracteres rectangulares y dónde se define esta notación?

¿Qué hace `–frontend` en `do-release-upgrade` y dónde puedo encontrar la lista de posibles valores?

¿Qué es un Hipervisor? ¿Cuál es la diferencia entre el tipo 1 y 2?

¿Qué hace el permiso de ejecución?

¿Cuál es la diferencia entre unlink y rm?