組み込みサバラブラリlibmysqld
を含むプリコンパイル済みのバイナリMySQL配布では,MySQLは,適切なベンダーコンパイラがあればそれを使用して,ライブラリを構築します。
自分でソスからMySQLを構築する場合に,libmysqld
ラブラリを取得するには,-DWITH_EMBEDDED_SERVER = 1
オプションを使用して,MySQLを構成してください。セクション2.9.4 " MySQLソス構成オプション"を参照してください。
プログラムをlibmysqld
とリンクさせる場合,システム固有のpthread
ラブラリおよびMySQLサ。mysql_config——libmysqld-libsを実行して、ラ以及ブラリの完全なリストを取得できます。
コードでスレッド関数を直接呼び出さない場合でも,スレッドプログラムをコンパイルし,リンクするための正しいフラグを使用する必要があります。
Cプログラムをコンパイルして,MySQLサーバーライブラリをプログラムの実行可能バージョンに組み込むために必要なファイルを含めるには,コンパイラは各種ファイルを見つける場所を知る必要があり,プログラムのコンパイル方法についての指示を必要とします。次の例に,gnu cコンパ. exeラ海湾合作委员会を使用するものとして、コマンド行からプログラムをコンパ以及ルする方法を示します。
GCC mysql_test.c -o mysql_test \ ' /usr/local/mysql/bin/mysql_config——include——libmysqld-libs '
海湾合作委员会コマンドの直後は,cプログラムソルの名前です。その後に,- o
オプションを指定して,後続のファイル名が,コンパイラが出力ファイルのコンパイル済みプログラムに指定することになる名前であることを示します。コードの次の行は,コンパイラにインクルードファイルおよびライブラリ,それがコンパイルされるシステムのその他の設定の場所を取得するように伝えます。mysql_configコマンドは,単一引用符ではなく,逆引用符で囲みます。
一部の海湾合作委员会以外のプラットフォームでは,組み込みライブラリはc++実行時ライブラリに依存するため,組み込みライブラリに対してリンクすると,シンボルなしエラーが発生することがあります。これを解決するには,c++コンパイラを使用してリンクするか,リンクコマンド行で,必要なライブラリを明示的に挙げます。