Ho creato un file configure.ac come questo:Come ottenere le variabili completamente espanse da configurare?
AC_INIT()
set
lo scopo di questo è quello di stampare ogni variabile d'ambiente a disposizione lo script di configurazione crea utilizzando set
, così mi fare questo:
[email protected]:~$ autoconf
[email protected]:~$ ./configure
che stampa un mucchio di variabili come
build=
cache_file=/dev/null
IFS='
'
LANG=C
LANGUAGE=C
datarootdir='${prefix}/share'
mandir='${datarootdir}/man'
no_create=
Fin qui tutto bene. Il problema è:
- voglio ampliare le variabili come
${prefix}/share
- ma tubazioni tutto in un file e l'esecuzione diexample.sh
utilizzando bash non funziona, perché bash si lamenta sulla modifica Variabili di lettura comeUID
e anche l'espansione non sembra funzionare. - Ho provato ad utilizzare un
makefile
per questo in cui funziona l'espansione, ma si lamenta a capo nelle stringhe, come in uscita al di sopra della linea diIFS=' causes an error message Makefile:24: *** missing separator. Stop.
Qualcuno ha un'idea di come ottenere una versione completamente ampliata di di configurazione di produzione?
Hi! Potresti spiegare perché ti piacerebbe farlo? La tua domanda sembra che tu stia cercando di risolvere un altro problema nel modo più difficile. (Ad esempio, se si desidera recuperare il valore espanso di una variabile come '$ datadir', ci sono modi più semplici per farlo.) – adl
Voglio creare modelli di script di shell indipendenti dal sistema linux su cui sono in esecuzione su così io puoi creare script per configurare un server e utilizzare lo stesso script per una seconda istanza che richiede solo la modifica di alcuni parametri il motore di template im usando solo cerca/sostituisci le variabili dello script per fare questo ho bisogno di inizializzare il motore con tutti le variabili o non vengono sostituite –
@adl puoi spiegare qual è il modo "facile" per affrontarlo. Sono anche alle prese con questo problema –