Com as bibliotecas SDL, por exemplo, seria necessário apontar para os cabeçalhos no início do código, da seguinte forma:
#include <SDL/SDL.h>
E, ao compilar com o GCC, por exemplo, a biblioteca deveria ser incluída com:
gcc project.cpp -o project -l/path/to/library/SDL
Portanto, quando você estiver desenvolvendo um programa com uma biblioteca específica para incluir, onde os arquivos de cabeçalho e a biblioteca devem estar localizados para que o GCC possa reconhecer de onde extrair essas informações? Eles precisam ser armazenados no diretório usr ou você pode dizer ao GCC para apontar para qualquer local que você quiser?
Isso é específico para o desenvolvimento no Ubuntu, pois é a plataforma para a qual estou desenvolvendo, mas qualquer plataforma * nix provavelmente seria semelhante.