Допустим, есть файлы tool.cpp, tool.h и my_tool.cpp
Где в tool.h объявлены какие-то вспомогательные функции, которые реализованы в tool.cpp. Кроме того, в tool.cpp есть main.
В my_tool.cpp мне хочется использовать все эти замечательные функции из tool.h, однако имеющийся там main мешается.
Решения здорового человека в «духе перетащить все функции в хедер», вынести main из tool.cpp понятны и разумны, но можно ли как-то сказать линкеру чтобы вместо
multiple definition of `main'; my_tool.cpp:19: first defined here
Он просто взял конкретный main, а второй выкинул?
P.S.
Если собирать через afl-cc, то проблемы с линкером нет, левый main не участвует. Я посмотрел какие флаги он добавляет, но там ничего похоже нет, просто свои символы еще.


