Vinculando librerías de apache

gcc 4.4.2

He instalado apache runtime portable. apr-1.3.9

./configure make make test make install 

Todo instalado muy bien.

Tengo en mi /usr/local/apr/lib todas las bibliotecas y las incluidas en el siguiente /usr/local/apr/include/apr-1

Tengo un progtwig main.c simple para probar:

 #include  #include  int main(void) { printf(" == Start of program ==\n"); return 0; } 

Y mi makefile:

 OBJECT_FILES = main.o CC = gcc CFLAGS = -Wall -g -D_LARGEFILE64_SOURCE LIBS_PATH = -L/usr/local/apr/lib INC_PATH = -I/usr/local/apr/include/apr-1 LIBS = -lapr-1 test_apr: $(OBJECT_FILES) $(CC) $(CFLAGS) $(OBJECT_FILES) $(LIBS_PATH) $(INC_PATH) $(LIBS) -o test_apr main.o: main.c $(CC) -c $(CFLAGS) $(INC_PATH) $(LIBS_PATH) $(INC_PATH) main.c 

Sin embargo, cuando bash comstackr obtengo el siguiente error:

 gcc -c -I/usr/local/apr/include/apr-1 -L/usr/local/apr/lib -I/usr/local/apr/include/apr-1 main.c In file included from main.c:3: /usr/local/apr/include/apr-1/apr.h:285: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'apr_off_t' make: *** [main.o] Error 1 make: Target `test_apr' not remade because of errors. 

Sin embargo, no entiendo esto, ya que el archivo de encabezado se llama apr.h en la carpeta apr-1 y la biblioteca con la que estoy enlazando se llama libapr-1.so

Sé que mis caminos son correctos, los reviso dos veces. Así que no puedo entender por qué no puedo vincularlos.

Muchas gracias por cualquier consejo,

Mi bola de cristal me dice que debe ejecutar agregar -D_LARGEFILE64_SOURCE a CFLAGS , o si está en Linux: el comando getconf LFS_CFLAGS le brinda una lista exacta de CFLAGS para agregar a su CFLAGS existente para soporte de archivos grandes.

Finalmente, deberías usar apr-1-config --cflags para obtener una lista de banderas del comstackdor si es posible.

Este es un parche cercano a su pregunta anterior, por lo que le daré un parche cercano a mi respuesta anterior, no es un error del vinculador. Debe pasar la ruta de inclusión al comstackdor, no el enlazador:

 main.o: main.c $(CC) -c $(INC_PATH) main.c