uso correcto de rpath (relativo versus absoluto)
Al construir un binario o biblioteca, especificando elrpath
es decir
-Wl,rpath,<path/to/lib>
le dice al enlazador dónde encontrar la biblioteca requerida en tiempo de ejecución del binario.
¿Cuál es la filosofía de UNIX con respecto a los caminos absolutos y relativos aquí? ¿Es mejor usar una ruta absoluta para que la lib se pueda encontrar desde todas partes? ¿O es mejor hacerlo relativo para que copiar un directorio completo o renombrar una ruta de nivel superior no haga que el binario sea unusab, le?
ActualizarUtilizando$ORIGIN
suele ser la forma preferida de construir binarios. Para las bibliotecas me gusta poner en la ruta absoluta, porque de lo contrario no podrá vincular a la biblioteca. Un enlace simbólico cambiará el$ORIGIN
para señalar el camino de laenlazar y no del enlaceobjetivo.