Você provavelmente encontrará o arquivo .pc
em /usr/lib/x86_64-linux-gnu/pkgconfig/
Não é incomum que pkg-config --cflags
não retorne nada: significa apenas que nenhum sinalizador adicional é necessário (por exemplo, todos os arquivos de cabeçalho necessários estão no caminho de inclusão padrão).
Em qualquer caso, CFLAGS
refere-se à fase de compilação de uma compilação, não à fase de enlace - onde ocorrem erros de símbolos indefinidos.
É provável que você esteja vinculando as bibliotecas e os arquivos de objetos na ordem errada: veja, por exemplo, Por que a ordem da opção '-l' no gcc é importante? Então tente
$(BINDIR)/$(TARGET): $(OBJECTS)
$(CC) -o $@ $(OBJECTS) $(LFLAGS) $(LDLIBS)
@echo "Linking complete!"
Além disso, não faz sentido especificar um caminho de inclusão durante a fase de link; Se você precisar vincular bibliotecas a partir do diretório atual, substitua
LFLAGS = -Wall -I. -pthread
por
LFLAGS = -Wall -L. -pthread
(embora o TBH não tenha certeza de que -Wall
tenha algum efeito durante a fase de link).