Existem diretrizes gerais para resolver problemas de referência não definidos / símbolos não resolvidos?

Estou tendo vários problemas de "referência indefinida" (durante o vínculo) e "símbolo não resolvido" (durante o tempo de execução após o dlopen) em que trabalho. É um sistema de makefile bastante grande.

Existem regras e diretrizes gerais para vincular bibliotecas e usar sinalizadores / opções do compilador para evitar esses tipos de erros?

questionAnswers(2)

yourAnswerToTheQuestion