If you're checking for SDL: #include "SDL.h" #ifndef _SDL_H #error You need to install libsdl1.2-dev #endif
SDL is maintained soleby by Sam, and he's not likely to change the _SDL_H symbol in the future, so it's safe to use the _SDL_H symbol to test for SDL.h. The same goes for other libraries, too. Just check the header file to see what symbol gets defined by the header files. But you *can't* do this for standard libraries, like C standard libraries that gets recreated by individual compiler vendors. For most libraries you use (SDL, SDL mixer, TTF lib, etc.), though, they get maintained only by a handful of people so it's relatively safe to use those symbols. But if doing the above technique is too "iffy", the more "correct" way would be to use Autoconf. Here's my tutorial on Autoconf/Automake (a very good one at that, too ^_^): http://www.cbreak.org/projects/autotools/ -Mark On Sun, 20 Jul 2003, Bill Kendrick wrote: > > Right now I have a program that will die if certain headers can't be found. > > The issue of getting these headers has practically become an FAQ for the libraries > installed. > ("You forgot to download the *-dev packages of the library, which contains the > headers!") > > > I'd like, if possible, GCC to barf with my OWN error, stating something along these > lines, > rather than just: > > src/myprog.c:15: foo.h: No such file or directory > > > I realize I can spit out an error message using the C "#error" directive, but is > there a simple > (and portable) way of TESTING? > > e.g.: > > #SOME_IF-LIKE_DIRECTIVE_I_DON'T_KNOW_ABOUT > > #include "somelib.h" > > #else > > #error "Ya big dummy! You need to install the 'somelib-dev' package!" > > #endif > > > > Is there such a thing? I'm actually realtively unfamiliar with all of the C > directives out there. > I've stuck to the typical "#define", "#ifdef", "#include" trio. ;^) > > > Thx in advance, > > -bill! > > PS - I'm not currently using autoconf/automake in this project. I'm not sure if I > ever will decide to... > > -- > [EMAIL PROTECTED] Got kids? Get Tux Paint! > http://newbreedsoftware.com/bill/ http://newbreedsoftware.com/tuxpaint/ > _______________________________________________ > vox-tech mailing list > [EMAIL PROTECTED] > http://lists.lugod.org/mailman/listinfo/vox-tech > -- Mark K. Kim http://www.cbreak.org/ PGP key available upon request. _______________________________________________ vox-tech mailing list [EMAIL PROTECTED] http://lists.lugod.org/mailman/listinfo/vox-tech
