Cómo agregar archivos cpp propios a Makefile

Logré compilar bitcoind con éxito utilizando el script/makefile de configuración enviado. Ahora quiero codificar algo yo mismo y agregar una carpeta dentro del directorio src. El problema ahora: ¿cómo agrego mis archivos cpp al Makefile? Al compilar, obtengo referencias indefinidas a las funciones que implementé dentro de mis archivos cpp. Al mirar dentro de mi carpeta, no hay archivos .o ni nada similar, así que asumo que no están compilados. Soy completamente novato en autoconf/automake y no tengo idea de cómo agregar algo a esos complicados scripts makefile/configure.

Mis mejores deseos para todos ustedes

Respuestas (1)

Bitcoin utiliza el sistema de construcción de autotools para construir el código fuente. Es un sistema muy poderoso, pero notoriamente confuso. Deberá editar el Makefile.amarchivo para incluir los archivos de origen que desea compilar y señalar el enlazador a fuentes compiladas. Luego deberá volver a ejecutar partes del sistema de compilación ( automake, ./configure, etc...) para poder regenerar Makefile.

Los detalles sobre cómo hacer esto son difíciles de decir, ya que deberá determinar de qué partes del sistema depende su nuevo código y qué partes dependen de su nuevo código. Sugiero leer sobre herramientas automáticas, determinando lo que se necesita para sus cambios de código particulares.

Muchas gracias por su respuesta, pero todavía no puedo agregar mi archivo a Makefile.am. Al echar un vistazo a ese archivo, no puedo encontrar ningún lugar donde se mencione un archivo .c/.cpp. También traté de volver a ejecutar autoscan/autoconf/automake solo empeorando cada vez más :(
@GladHeAteHer, bitcoin es un proyecto complejo. La raíz Makefile.am enumerará los subdirectorios que contienen sus propios archivos Makefile.am, que a su vez apuntan a otros subdirectorios con otros archivos Makefile.am. Es en estos archivos donde necesita agregar sus nuevos archivos. Como dije en la respuesta, los detalles estarán determinados por lo que está cambiando y en qué orden debe compilarse. Recomiendo encarecidamente aprender más sobre las herramientas automáticas antes de continuar.
Gracias, encontré otro Makefile.am al que podía agregar mis propios archivos .cpp y ahora funciona :)