Evite vincular símbolos no utilizados al vincular contra bibliotecas estáticas

Estoy usando laapple gcc para compilar un dylib que voy a redistribuir. Por varias razones estoy usando algunas bibliotecas, digamoslibz para que sea simple.

Dado que esta biblioteca no se encuentra típicamente en un sistema Mac que deseo enlace estático en utilizó símbolos en el dylib pasando la ruta a la.a-file para simplificar la implementación.

Ahora, el enlazador enlaza entodo símbolos de la lib en el dylib resultante, aunque solo hago referencia a un subconjunto. En Linux nunca he encontrado este problema, el enlazador descarta felizmente todos los símbolos sin referencia y crea un ejecutable muy delgado, por lo que debería serposibl. El archivo dylib que tengo ahora es ~ 10 veces más grande de lo que debería.

He intentado jugar con la bandera del enlazador -dead_code, pero fue en vano. ¿Quizás simplemente no lo entiendo?

Alguien sabe la solución a esto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta