My current c++ application is compiled by calling "make", and invoked by calling "./fileName.bin".
Now, I want to add the functionality of cairo library into the application. Note that the the program written specifically
for testing cairo (outside my application) is compiled by
"g++ -o fileX $(pkg-config --cflags --libs cairo) fileX.cpp"
and invoked by "./fileX".
Now, I dont know how to link cairo library to my application that is invoked by calling make.
I added the following into my application:

#include <cairo.h>
#include <cairo-pdf.h>
int myPDFdrawing() {
  cairo_surface_t *surface;
  cairo_t *cr;


  surface = cairo_pdf_surface_create("pics/mojFajl.pdf", 500, 648);
  cr = cairo_create(surface);

  cairo_set_source_rgb(cr, 0, 0, 0);
  cairo_select_font_face (cr, "Sans", CAIRO_FONT_SLANT_NORMAL,
  cairo_set_font_size (cr, 40.0);
  cairo_translate (cr, 0.0, 150.0);

  cairo_move_to(cr, 100.0, 500.0);
  cairo_show_text(cr, "Disziplin ist Macht.");
  cairo_move_to (cr, -100, -110.5);
  cairo_line_to (cr, -180, -130.5);
  cairo_set_line_width (cr, .05);
  cairo_stroke (cr);


  return 0;


I tried invoking "make $(pkg-config --cflags --libs cairo)", but this is not appropriate.
I would appreciate your help on this.

This is the content of my Makefile:

STXXL_ROOT      ?= /home/laptop/stxxl-1.2.1

# use the variables from
CXX              = $(STXXL_CXX)

# add your own optimization, warning, debug, ... flags
# (these are *not* set in
CPPFLAGS        += -O3 -Wall -g -DFOO=BAR

# build your application
# (my_example.o is generated from my_example.cpp automatically)
fileA.bin: fileA.o

I guess it should be adapted somehow?

IF you use CodeLite IDE it have functionality to export Makefiles for your program.
Else see this

I would recommend you switch to cmake instead, but to fix your makefile. Add the "$(pkg-config --cflags --libs cairo)" to CPPFLAGS, like this:

CPPFLAGS += $(pkg-config --cflags --libs cairo)

I'm pretty sure that or a variation of it should do the job, but I'm not an expert on makefiles.