¿Cuál es la forma normal de hacer frente a ubicaciones de la biblioteca no estándar en una secuencia de comandos autoconf?

StackOverflow https://stackoverflow.com/questions/944235

Pregunta

Estoy tratando de utilizar la cadena de herramientas autoconf / automake GNU, por primera vez, por lo que la respuesta a mi pregunta podría ser trivial.

El programa necesita OpenGL / GLUT donde están instaladas las cabeceras y bibliotecas en una ubicación no estándar. He encontrado estas macros que debe hacer toda la comprobación de mí. Simplemente estoy llamando con AX_CHECK_GLUT . ¿Cómo hago la macro encontrar las bibliotecas? Estoy buscando algo como

  

./ configure --with-exceso-dir = / home / Hanno / saturación

De forma más general: ¿Cuál es la forma normal de hacer frente a ubicaciones de la biblioteca no estándar en una secuencia de comandos autoconf? Por supuesto, puedo jugar con CPPFLAGS y LIBS las variables, pero tengo la sensación de que me falta algo.

¿Fue útil?

Solución

La forma en que están diseñados Autotools, un autor del paquete no tiene que hacer nada para apoyar instalado en lugares no convencionales requisito previo. La salida del ./configure --help incluye las siguientes líneas:

LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
            nonstandard directory <lib dir>
CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
            you have headers in a nonstandard directory <include dir>

Por lo tanto, si el instalador tiene un requisito previo instalado en una ubicación no estándar, tendrá que emitir

./configure CPPFLAGS=-I/non-standard-dir/include LDFLAGS=-L/non-standard-dir/lib

Debido CPPFLAGS y LDFLAGS son utilizados por los controles y reglas configure Makefile, todo debería funcionar.

Algunos autores paquete como para ofrecer una --with- paquete opción =location como una forma abreviada de lo anterior, pero esto normalmente no es el propósito de --with- paquete Opciones. Estas opciones se utilizan mejor para especificar si un paquete opcional se debe utilizar , o como un pre-requisito debe cumplirse .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top