The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Autotools: как сгенерить хидер с необходимыми путевыми именами?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Компиляция)
Изначальное сообщение [ Отслеживать ]

"Autotools: как сгенерить хидер с необходимыми путевыми именами?"  +/
Сообщение от Аноним (??) on 10-Июл-13, 08:39 
В проекте создается бинарник и подключаемые модули. Подключаемые модули будут в конечном итоге располагаться в каталогах, которые будут определены при запуске configure. Подскажите, каким образом и что надо задать для automake/autoconf, чтобы автоматически создавался хидер с макроопределением, в котором бы прописывался путь к каталогу, в который будут ставиться подключаемые модули.
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Autotools: как сгенерить хидер с необходимыми путевыми именами?"  +/
Сообщение от Mr. Mistoffelees on 11-Июл-13, 15:58 
Привет,

> В проекте создается бинарник и подключаемые модули. Подключаемые модули будут в конечном
> итоге располагаться в каталогах, которые будут определены при запуске configure. Подскажите,
> каким образом и что надо задать для automake/autoconf, чтобы автоматически создавался
> хидер с макроопределением, в котором бы прописывался путь к каталогу, в
> который будут ставиться подключаемые модули.

В configure.ac ставим нужную переменную, стоимость которой будет задана во время исполнения configure (в данном примере - через prefix, но можно организовать и через --with-blah=/...):

AM_CONFIG_HEADER([config.h])
BLAH_BLAH_DIR=$prefix/blah-blah
AC_DEFINE_UNQUOTED([BLAH_BLAH_DIR],["$BLAH_BLAH_DIR"],[Directory for storing blah-blah])

Далее в сырцах берем config.h и ползуемся из него нашей переменной:

#include "config.h"
int main() {
...
printf("%s\n", BLAH_BLAH_DIR);
...
}

WWell,

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Autotools: как сгенерить хидер с необходимыми путевыми именами?"  +/
Сообщение от Аноним (??) on 12-Июл-13, 09:56 
>[оверквотинг удален]
> BLAH_BLAH_DIR=$prefix/blah-blah
> AC_DEFINE_UNQUOTED([BLAH_BLAH_DIR],["$BLAH_BLAH_DIR"],[Directory for storing blah-blah])
> Далее в сырцах берем config.h и ползуемся из него нашей переменной:
> #include "config.h"
> int main() {
>  ...
>  printf("%s\n", BLAH_BLAH_DIR);
>  ...
> }
> WWell,

Т.е. я должен буду явно задавать значение prefix? Что-то типа configure --libexecdir=/usr/lib. Так?
Выходит я был в полшаге от успеха. Но думал, что по умолчанию prefix определится автоматически. В итоге у меня в config.h определялось что-то типа {prefix}/bla_bla/plugins

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру