Простая альтернатива libtool?

Будучи полностью удовлетворенным старомодным Makefiles, я ищу простую альтернативу libtool. Я не хочу переключаться на automake, и я постоянно сталкиваюсь с проблемами с libtool, когда я пытаюсь использовать его напрямую. Последний из них - "неподдерживаемые свойства жесткого кода", и я устаю от недостатка полной документации, которая просто говорит мне, что на этот раз неправильно...

Я хочу только собрать кучу файлов .o с правильными флагами, а затем связать их с общей библиотекой, чтобы она работала на максимально возможном количестве платформ. Есть ли что-то там, что делает именно это, а не заставлять меня одновременно переключать все мои другие инструменты?

Ответ 1

Там jlibtool (что не имеет ничего общего с java).

Он написан на C и может быть просто связан с вашим источником.

Первоначально это был проект apache, но тот, кто его там работал, кажется, отказался от него в 2004 году.

Он был перехвачен сторонником проекта FreeRADIUS Аланом Деккоком, который модернизировал код и исправил некоторые проблемы с ником. Мы используем его для проекта FreeRADIUS ( >= 3.0.0), чтобы сделать все время компоновки времени сборки.

Ответ 2

Я не уверен, что это будет соответствовать вашей рабочей последовательности, но я бы рекомендовал посмотреть CMake. Он работает на Windows, Linux и Mac и не должен заставлять вас менять какие-либо другие инструменты. Вы должны будете сами оценить свою пригодность.

Ответ 3

Учитывая ваше описание в комментарии к отзыву Milliams,

Мне просто нужен один инструмент, который я расскажу: "Дайте мне флагов компилятора, чтобы я мог скомпилировать эти n файлов для использования в общей библиотеке, а затем дать мне команды для их соединения",

тогда libtool вполне может быть самым простым инструментом для работы. Я не знаю другой альтернативы.

Вы правы, что документация для использования libtool с обычными make файлами практически не существует, но libtool, конечно же, не требует переключения на automake. Кросс-платформенные библиотеки сложны, и цена, которую вы должны заплатить за них, - это libtool. (Или, может быть, цена скидки - это libtool + automake + autoconf или CMake или Jam.)