Solaris 2.7 および 2.8 上では、Solaris 2.6 バイナリを通常どおりに使用することができます。Solaris 2.6 のほとんどの問題は、Solaris 2.7 および 2.8 の場合にも当てはまります。
注意: MySQL バージョン 3.23.4 以降は、新しいバージョンの Solaris を自動検出できるため、以下の問題の回避を可能にします。
Solaris 2.7 および 2.8
のインクルードファイルにはいくつかのバグがあります。gcc
を使用している場合に、以下のエラーが発生することがあります。
/usr/include/widec.h:42: warning: `getwc' redefined /usr/include/wchar.h:326: warning: this is the location of the previous definition
この場合、以下を実行してこの問題を解決できます。
/usr/include/widec.h
を
.../lib/gcc-lib/os/gcc-version/include
に
コピーして、以下の行 41 を変更します。
#if !defined(lint) && !defined(__lint) これを次のように変更します。 #if !defined(lint) && !defined(__lint) && !defined(getwc)
または、直接 /usr/include/widec.h
を編集します。いずれの場合も、修正した後、config.cache
を削除して、configure
を再実行してください。
make
を実行したときに以下のようなエラーが発生した場合は、configure
が curses.h
ファイルを検出できなかったことが原因です(/usr/include/widec.h
にエラーがある可能性が高いです)。
In file included from mysql.cc:50: /usr/include/term.h:1060: syntax error before `,' /usr/include/term.h:1081: syntax error before `;'
この問題を解決するには、以下のいずれかを実行します。
CFLAGS=-DHAVE_CURSES_H CXXFLAGS=-DHAVE_CURSES_H
./configure
を指定してコンフィギャする。
前述のように
/usr/include/widec.h
を編集し、configure を再実行する。
config.h
ファイルから
#define HAVE_TERM
行を削除し、make
を再実行する。
クライアントプログラムをリンクしているときに、リンカが
-lz
を検出できないという問題が発生した場合は、libz.so
ファイルが /usr/local/lib
にインストールされていることが問題である可能性が高いです。この問題は、以下のいずれかの方法で解決できます。
/usr/local/lib
を
LD_LIBRARY_PATH
にコピーする。
/lib
にある
libz.so
へのリンクを追加する。
Solaris 8 を使用している場合は、Solaris 8 の CD ディストリビューションにあるオプションの zlib をインストールできる。
--with-named-z-libs=no
オプションを指定して、MySQL
をコンフィギャする。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.