Existe uma maneira de ignorar referências indefinidas não utilizadas?

Suponha que eu tenha dois arquivos de origem -UndefErr.cpp:

#include <cstdio>

void UndefFunc();
void Func2(){UndefFunc();}

void Func1(){printf("Hi\n");}

E amain.cpp:

void Func1();

int main(){
    Func1();
    return 0;
}

Como você vê noUndefErr.cpp aFunc2() irá desencadear um erro, por usar o indefinidoUndefFunc(). No entanto, a função principal não se importa com oFunc2()! De acordo comuma pergunta relevante Eu poderia passar uma opção--unresolved-symbols = ignorar-em-objetos-arquivos para o vinculador, mas quero uma coisa meio diferente. Preciso de um vinculador para saber se as funções indefinidas são usadas em algum lugar e só então falham.

O motivo para fazer uma pergunta tão estranha é que estou tentando usar umlwIPe é difícil entender todas as suas dependências(Eu só preciso de TCP / IP), e não consigo encontrar tutoriais na internet. Então eu pensei que poderia compilar mais(ou todos) os arquivos .c separadamente e escreva alguns testes simples para ver o que ele faz. Mas essa abordagem se depara com "referências indefinidas", a maioria provavelmente irrelevante para o caso de uso.

questionAnswers(2)

yourAnswerToTheQuestion