Я думаю, что Вы на правильном пути с, ОБЪЕДИНЯЮТ. Посмотрите здесь для примера создания разграниченной запятой строки:
http://www.sqlteam.com/article/using-coalesce-to-build-comma-delimited-string
The GLib 2.22 INSTALL
file states that pkg-config
is a requirement for installing this library. I am not being GLib (pun intended!); statement of this requirement is one of the first things on the top of the INSTALL
file.
From the text surrounding it is unclear whether pkg-config
is needed to compile GLib itself, however it is clear that GLib 2.22 authors do not intend for any users to compile against GLib without having pkg-config. In particular, GLib's make install
will install .pc
files appropriately.
For platform portability, instruct the user to set $PKG_CONFIG_PATH
appropriately.
С помощью макроса PKG_CHECK_MODULES
сгенерированные Autoconf сценарии configure
могут получить пакеты -config данные автоматически. Например, добавление этой строки в ваш файл configure.ac
:
PKG_CHECK_MODULES([DEPS], [glib-2.0 >= 2.24.1])
приведет к тому, что результирующий сценарий configure
будет гарантировать, что установленная версия glib-2.0 больше или равна к версии 2.24.1, а также добавить к переменным DEPS_CFLAGS
и DEPS_LIBS
вывод pkg-config --cflags glib-2.0
и pkg- config --libs glib-2.0
соответственно. Затем вы используете переменные $ (DEPS_CFLAGS)
и $ (DEPS_LIBS)
в основных параметрах _CFLAGS
и _LDADD
:
bin_PROGRAMS = hello
hello_CFLAGS = $(DEPS_CFLAGS)
hello_SOURCES = hello.c
hello_LDADD = $(DEPS_LIBS)