Oracle 5.0 Reference Manual page 144

Table of Contents

Advertisement

it looks for that file and reads its contents if it exists, on the assumption that the information is still
correct. That assumption is invalid when you reconfigure.
• Each time you run configure, you must run
to remove old object files from previous builds first because they were compiled using different
configuration options.
To prevent old configuration information or object files from being used, run these commands before
re-running configure:
shell>
rm config.cache
shell>
make clean
Alternatively, you can run
The following list describes some of the problems that have been found to occur most often when
compiling MySQL:
• If you get errors such as the ones shown here when compiling sql_yacc.cc, you probably have
run out of memory or swap space:
Internal compiler error: program cc1plus got fatal signal 11
Out of virtual memory
Virtual memory exhausted
The problem is that
gcc
functions. Try running
shell>
./configure --with-low-memory
This option causes
-fno-inline
you are using something else. You should try the
have so much memory and swap space that you think you can't possibly have run out. This problem
has been observed to occur even on systems with generous hardware configurations, and the
with-low-memory
• By default,
configure
using gcc, that behavior can cause problems during configuration such as this:
configure: error: installation or configuration problem:
C++ compiler cannot create executables.
You might also observe problems during compilation related to g++, libg++, or libstdc++.
One cause of these problems is that you may not have g++, or you may have
or libstdc++. Take a look at the
++ compiler did not work. To work around these problems, you can use
Try setting the environment variable
shell>
CXX="gcc -O3" ./configure
This works because
or
by default.
libstdc++
Another way to fix these problems is to install g++, libg++, and libstdc++. However, do not use
or
libg++
libstdc++
providing any benefits. Some versions of these libraries have also caused strange problems for
MySQL users in the past.
To define flags to be used by your C or C++ compilers, specify them using the
environment variables. You can also specify the compiler names this way using
CXXFLAGS
CXX. For example:
Dealing with Problems Compiling MySQL
make
distclean.
requires a huge amount of memory to compile
with the
configure
to be added to the compile line if you are using
[124]
option usually fixes it.
picks
as the compiler name and GNU
c++
config.log
to
CXX
compiles C++ source files as well as
gcc
with MySQL because this only increases the binary size of
124
again to recompile. However, you may want
make
--with-low-memory
--with-low-memory
file. It should contain the exact reason why your C
-O3". For example:
"gcc
g++
with inline
sql_yacc.cc
[124]
option:
and
gcc
[124]
option even if you
links with -lg++. If you are
c++
but not libg++,
g++
as your C++ compiler.
gcc
does, but does not link in
mysqld
CFLAGS
if
-O0
--
libg++
without
and
and
CC

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mysql 5.0

Table of Contents