"Símbolo indefinido _memset"
Hice una pregunta similar, pero tengo una actualización que realmente me confunde. Esencialmente, quiero vincular varios archivos de objetos con el vinculador de la siguiente manera:
/usr/ccs/bin/ld -o q -e start_master -dn -z defs -M ../../../mapfile.q {list of object files}
Obtuve el siguiente error
Undefined first referenced
symbol in file
_memset reconf.o
Lo interesante es que memset no está referenciado en reconf.c y también grep'o todo el directorio pero tampoco hay referencia en ninguno de los otros archivos a _memset. Por lo tanto, me pregunto por qué recibo este mensaje de error del vinculador, aunque en ninguna parte de mi código fuente _memset se usa realmente. ¿Alguien una idea de lo que podría estar pasando aquí?
¡Muchas gracias, este error nos está volviendo locos!
EDITAR
ntenté agregar la ruta a la biblioteca de memset y la vinculé con -lc y la ejecuté en modo detallado:
/usr/ccs/bin/ld -o q -e start_master -dn -z defs -z verbose -L/usr/lib -M ../../../mapfile.q {list of object files} -lc
Entonces me sale el siguiente error: ld: fatal: biblioteca -lc: no encontrado ld: fatal: errores de procesamiento de archivos. No hay salida escrita en q
Y esto aunque libc.so está claramente en / usr / lib ...
Confus
EDIT II:
Investigando más, parece que en Solaris 10 los enlaces estáticos desaparecen, como puede leer aquí:
http: //blogs.oracle.com/rie/entry/static_linking_where_did_i
Probablemente este es mi problema. ¿Alguien tiene una idea de cómo podría volver a escribir mi comando de enlace para una solución a este problema?
¡Muchas gracias