When sci-mathematics/minisat-2.2.0-r4 is compiled, static library libminisat.a is builded with Main.o part which include 'main' function, which is wrong. There is rule in 'mpl/template.mk' to remove Main.o* code from source, when libminisat.a is created, but for some reason it's ignored. Part of mpl/template.mk responsible: lib$(LIB)_standard.a: $(filter-out */Main.o, $(COBJS)) lib$(LIB)_profile.a: $(filter-out */Main.op, $(PCOBJS)) lib$(LIB)_debug.a: $(filter-out */Main.od, $(DCOBJS)) lib$(LIB)_release.a: $(filter-out */Main.or, $(RCOBJS)) I'm not sure about GNU make treating wildcards, but above code is nonfunctional. So unless someone who mastered GNU make, can change wildcards above, only solution is remove wildcards completely: lib$(LIB)_standard.a: $(filter-out $(MROOT)/simp/Main.o, $(COBJS)) lib$(LIB)_profile.a: $(filter-out $(MROOT)/simp/Main.op, $(PCOBJS)) lib$(LIB)_debug.a: $(filter-out $(MROOT)/simp/Main.od, $(DCOBJS)) lib$(LIB)_release.a: $(filter-out $(MROOT)/simp/Main.or, $(RCOBJS))
Created attachment 549666 [details, diff] Patch to template.mk
Created attachment 549668 [details, diff] Patch to minisat-2.2.0-r4.ebuild