Проблемы с простой настройкой autoconf для распространения общей библиотеки - PullRequest
2 голосов
/ 27 марта 2011

После проблем с расширением стандартного make-файла для (например, очистки, (не) установки и т. Д.) Я решил попробовать autoconf.

Единственная документация, которую я смог найти, это как предоставить файл дляскомпилирован и установлен, но не файл, который будет связан и установлен в папку библиотеки.

Пример учебного пособия дает мне:

# what flags you want to pass to the C compiler & linker
CFLAGS = --pedantic -Wall -std=c99 -O2
LDFLAGS =

# this lists the binaries to produce, the (non-PHONY, binary) targets in
# the previous manual Makefile
bin_PROGRAMS = targetbinary1 targetbinary2 [...] targetbinaryN
targetbinary1_SOURCES = targetbinary1.c myheader.h [...]
targetbinary2_SOURCES = targetbinary2.c
.
.
targetbinaryN_SOURCES = targetbinaryN.c

Конечно, это немного ограничиваетон не раскрывает, куда идут Cflags (или LDFLAGS в случае, который я хочу иметь) или применяются ли они автоматически.

bin_PROGRAMS может быть несколькими другими опциями, но, похоже, они предназначены только для включения библиотек (.la) вместо того, чтобы скомпилировать или установить скомпилированную разделяемую библиотеку в систему.

Я немного глупо упаковываю свою библиотеку, чтобы она могла быть ./configured и т.п.?Существуют ли какие-либо базовые руководства для GNU make с такого рода упаковкой или неофициальными соглашениями, которые бы облегчили эту задачу?Я с нетерпением жду возможности исследовать все свои варианты.

1 Ответ

2 голосов
/ 27 марта 2011

Я нашел ответ, используя libtool с automake, это гораздо более разумно, чем обработка специфичных для платформы флагов и тому подобное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...