Я тоже нахожу это раздражающим. Я помню, как искал инструмент для сортировки, но не нашел ничего, что могло бы помочь.
Наконец, я решил использовать метод грубой силы: если вы перечислите все свои библиотеки дважды, например, -lA -lB -lA -lB
, это гарантирует, что каждая библиотека будет указана до (и после) любой другой библиотеки.
Итак, имея $(LIST)
библиотек, вы можете использовать $(addprefix -l,$(LIST) $(LIST))
.
Не очень элегантно, несколько замедляет стадию компоновки, но работает.