Date: Sat, 13 Jul 2002 16:48:38 +0200 From: Paul Everlund <tdv94ped@cs.umu.se> To: Roman Neuhauser <neuhauser@bellavista.cz> Cc: freebsd-questions@freebsd.org Subject: Re: Include files in /usr/local/include not found Message-ID: <3D303DC6.CD4A5CFB@cs.umu.se> References: <3D3013EA.C0904498@cs.umu.se> <20020713140607.GH322@freepuppy.bellavista.cz>
next in thread | previous in thread | raw e-mail | index | archive | help
Roman Neuhauser wrote: > > > Date: Sat, 13 Jul 2002 13:50:02 +0200 > > From: Paul Everlund <tdv94ped@cs.umu.se> > > To: freebsd-questions@freebsd.org > > Subject: Include files in /usr/local/include not found > > > > Hi! > > > > I got an error while making ./configure for a program. It said it > > did not find png.h, but it's there as I have png-1.2.4 installed > > on my system. > > > > Wrote the following test program: > > > > ---test.c > > #include <png.h> > > > > int main() > > { > > return 0; > > } > > > > Did then compile it with: > > cc test.c > > > > Got the following error: > > test.c:1: png.h: No such file or directory > > > > Did then try to compile it as this: > > cc -I/usr/local/include test.c > > > > This worked! > > > > My question is: > > How do one fix so /usr/local/include is searched automatically? > > > > If that can be done, the ./configure should work for the program > > I'm trying to build. > I don't have an answer, but two questions instead (and a hint > maybe): > > what does config.log say about that error? configure:5957: checking for PNG support configure:5963: checking for png.h configure:5973: cc -E conftest.c >/dev/null 2>conftest.out configure:5969: png.h: No such file or directory configure: failed program was: #line 5968 "configure" #include "confdefs.h" #include <png.h> configure:5996: checking for png_get_io_ptr in -lpng configure:6015: gcc -o conftest -g -O2 conftest.c -lpng 1>&5 /usr/libexec/elf/ld: cannot find -lpng configure: failed program was: #line 6004 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char png_get_io_ptr(); int main() { png_get_io_ptr() ; return 0; } configure:6037: checking if PNG package is complete > is the software publically available? Yep! > morale: don't trust configure, and if at all possible, double > check what it tells you with its guts, and config.log I don't trust configure. :-) That's why I wrote my own test program. Directory /usr/include is searched by gcc automatically, but it seems /usr/local/include is not. I think that is somehow strange. Locally installed packages/libraries with header files should be in gcc's search path. Thanks for your reply! Best regards, Paul To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3D303DC6.CD4A5CFB>