Перед тем как приступить к установке исходного кода, вначале убедитесь, что наш бинарный дистрибутив подходит для вашей платформы и что он будет работать на вашей системе. Мы прилагаем много усилий для того, чтобы снабдить наши бинарные дистрибутивы наилучшими свойствами из возможных.
Для сборки и установки MySQL из исходного кода необходимы следующие инструменты:
GNU
gunzip
для разархивирования дистрибутива.Подходящий
tar
для распаковки дистрибутива. Известно, что GNUtar
является работоспособным, аtar
разработки Sun имеет проблемы.Работающий компилятор ANSI C++. К числу компиляторов, о которых известно, что они работают, относятся версии
gcc
>= 2.95.2,egcs
>= 1.0.2 или egcs 2.91.66, SGI C++ и SunPro C++. При использованииgcc
нет необходимости вlibg++
. Версия gcc 2.7.x имеет ошибку, из-за которой невозможна компиляция некоторых полностью допустимых файлов C++, таких какsql/sql_base.cc
. Если у вас есть толькоgcc
2.7.x, то для того, чтобы можно было провести компиляцию MySQL, необходимо модернизироватьgcc
. Компиляторgcc
2.8.1, как известно, также имеет проблемы на некоторых платформах, так что его лучше не использовать, если для данной платформы существует новый компилятор. При компиляции версии MySQL 3.23.x рекомендуетсяgcc
>= 2.95.2.Хорошая программа
make
. Всегда рекомендуется (а иногда и необходимо) использовать GNU make. В случае возникновения проблем мы рекомендуем попробовать работать с версией GNU make 3.75 или более новой.
Очень важно, чтобы вы использовали последнюю версию gcc
, достаточно новую,
чтобы ``понимать'' опцию -fno-exceptions
. В противном случае не исключена
компиляция бинарного кода, который может неожиданно привести к отказу. Мы
также рекомендуем использовать -felide-constructors
и -fno-rtti
вместе с
-fno-exceptions
. Если вы сомневаетесь, то выполните следующие действия:
CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions \ -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler \ --with-mysqld-ldflags=-all-static
На большинстве операционных систем это даст быстрый и стабильный бинарный код.
Если вам придется столкнуться с проблемами, то при отправке вопросов на
<[email protected]>
, пожалуйста, всегда используйте mysqlbug
. Даже если
ваша проблема не вызвана какой-либо ошибкой, mysqlbug
соберет системную
информацию, которая в поможет решении этой проблемы другим пользователям.
Без mysqlbug
уменьшается вероятность того, что вы получите решение своей
проблемы! mysqlbug
можно найти в каталоге scripts
после распаковки
дистрибутива. See Раздел 1.8.1.3, «Как отправлять отчеты об ошибках или проблемах».