Libclang API para obtener definiciones de funciones definidas en un archivo diferente

Supongamos que tengo dos archivos main.c y func.c func.c se llama desde main.c’s function. Normalmente, generaría main.o y func.o, y el enlazador encontraría la definición de func y lo vincularía a su llamada en main .c

Ahora, quiero hacer lo mismo a través de las API de libclang. Esto es para una utilidad de navegación de código de tipo Doxygen que estoy haciendo. Soy capaz de analizar los dos archivos. A partir de aquí, no sé cómo proceder. ¿Debo generar archivos * .o y hacer que clang los vincule?

Gracias, espero que quede claro al hacer la pregunta.

No, no es necesario comstackr realmente su código para objetar archivos.

El enlace entre los símbolos en ambas unidades de traducción se puede establecer mediante USR (Resolución de símbolo unificada). Cuando encuentre un lugar interesante en el AST de una unidad de traducción (representado por un CXCursor en libclang), llame a clang_getCursorUSR() para obtener el USR asociado.

Si dos CXCursor tienen el mismo USR, incluso en dos unidades de traducción diferentes, están asociados al mismo símbolo.