gmake og #include

From: Jette Derriche (none@bsd-dk--nerdgirl.dk.lh.bsd-dk.dk)
Date: Fri 27 Aug 2010 - 13:05:04 CEST


Subject: gmake og #include
From: Jette Derriche <none@bsd-dk--nerdgirl.dk.lh.bsd-dk.dk>
To: bsd-dk@bsd-dk.dk
Date: Fri, 27 Aug 2010 13:05:04 +0200

Jeg forsøger at bygge noget software med gmake, og det er ikke noget jeg
har særlig erfaring med... Lige nu sidder jeg og hiver mig selv i håret
over noget #include halløj der ikke fungerer... I hvert fald siger gmake
at nogle filer ikke findes, selvom de gør...

I Makefile kan jeg definere stien til mysql lib og mysql include filer,
og disse stier har jeg rettet så de passer:

19 # Mysql lib directory
20 # exemple: <path>/mysql-5.1.41/libmysql_r/.libs
21 MYSQL_LIB := /usr/local/lib
22
23 # Mysql include directory
24 # exemple: <path>/mysql-5.1.41/include
25 MYSQL_INC := /usr/local/include

Den starter så med at inkludere my_global.h
fra /usr/local/include/mysql, og det fungerer fint. Men my_global.h
inkluderer så igen my_config.h som også ligger
i /usr/local/include/mysql, men den kan gmake ikke finde.

Jeg kender intet til C-programmering, så jeg har forsøgt at finde noget
om hvordan #include fungerer... jeg fandt følgende:

--------------------------------------------
#include <stdio.h>
This form instructs the preprocessor to search for include files first
along the path specified by the /I compiler option, then, when compiling
from the command line, along the path specified by the INCLUDE
environment variable.
--------------------------------------------

Jeg aner ikke hvad /I compiler er, men jeg kan da finde ud af at sætte
en environment variabel:

# setenv INCLUDE "/usr/local/lib;/usr/local/include"

Men den kan stadig ikke finde my_config.h

Der er tydeligvis et eller andet her jeg misser... men hvad?

/Jette



This archive was generated by hypermail 2b30 : Tue 31 Aug 2010 - 23:00:00 CEST