OpenDBX/Setup/Common problems

From Linuxnetworks
< OpenDBX
Revision as of 21:27, 15 February 2009 by 194.158.241.118 (Talk)

Jump to: navigation, search

C compiler cannot create executables

checking for gcc... gcc
checking for C compiler default output file name... 
configure: error: C compiler cannot create executables
See `config.log' for more details.

And if you see config.log you see:

crt1.o: No such file: No such file or directory

You probably don't have the build-essential package installed. To fix this you must:

apt-get update 
apt-get install build-essential

If you get the crt1.o error on Solaris, you have to install the SUNWarc (Lint Libraries (usr)) package:

pkgadd -d /cdrom/cdrom0/Solaris_10/Product/ SUNWarc

Header not found

./configure will search in your computer if you have all the necessary things for compilation. If somethins is missing, you will get an error message like this:

configure: error: <header-file> header not found

This is because it didn't find the header file ( .h ) of an necessary library. In all major Linux/Unix distributions, the header files for libraries are in the development package of that library and its name contains either "-dev" or "-devel". After installing the package, the header file should be available in the standard include path (/usr/include/). If it doesn't (e.g. the MySQL or PostgreSQL header are located in other directories in many distributions), you have to add the location to the CPPFLAGS environment variable like this:

CPPFLAGS="-I/usr/include/mysql" ./configure --with-backends="mysql"

For the major distributions, there's a list of non-standard directories available.