¿Cuál es el significado de pkg-config en gcc?

Al crear un ejemplo de dbus, descubrí que necesitamos agregar un pkg-config en gcc. Por ejemplo:

gcc `pkg-config --cflags --libs dbus-1` <file_name> -o <file_name.out>

Cual es el significado depkg-config --cflags --libs dbus-1? ¿Qué es pkg-config aquí? ¿Qué es cflags extra aquí? que es--libs¿aquí?

Respuestas a la pregunta(2)

Su respuesta a la pregunta