Есть ли способ игнорировать неиспользованные неопределенные ссылки?
Предположим, у меня есть два исходных файла -UndefErr.cpp:
#include <cstdio>
void UndefFunc();
void Func2(){UndefFunc();}
void Func1(){printf("Hi\n");}
Иmain.cpp:
void Func1();
int main(){
Func1();
return 0;
}
Как вы видите вUndefErr.cpp Func2()
собирается вызвать ошибку, для него используется неопределенныйUndefFunc()
, Однако основная функция не заботится оFunc2()
! В соответствии ссоответствующий вопрос Я мог бы передать вариант--unresolved-символы = игнорирующие в объектно-файлы компоновщику, но я хочу что-то другое. Мне нужен компоновщик, чтобы знать, использовались ли где-то неопределенные функции, и только тогда произойдет сбой.
Причина задать такой странный вопрос в том, что я пытаюсь использоватьLwIPи трудно понять все его зависимости(Мне нужен только TCP / IP)и я не могу найти учебники в интернете. Так что я думал, что смогу собрать больше всего(или все) отдельно .c файлы и напишите несколько простых тестов, чтобы увидеть, что они делают. Но этот подход натыкается на «неопределенные ссылки», большинство из которых, вероятно, не имеют отношения к сценарию использования.