libmysqld
ライブラリを取得するには、--with-embedded-server
オプションを使って、MySQLを配置すべきです。詳しくは項2.9.2. 「典型的な configure オプション」を参照してください。
あなたのプログラムをlibmysqld
とリングさせるとき、MySQLサーバが使用する、システムに固有なpthread
ライブラリも含めなければなりません。mysql_config
--libmysqld-libsを実行することによって、ライブラリのフルリストを取得することができます。
スレッド機能を自分のコードの中に直接呼び出さない場合でも、スレッド付きプログラムを翻訳し且つリンクさせるための正しいフラグを使用しなければなりません。
Cプログラムを翻訳して、埋め込まれたMySQLサーバライブラリに対して必要なファイルをプログラムの翻訳バージョンの中に含ませるため、GNU
C
コンパイラー(gcc
)を使ってください。コンパイラーには、様々なファイルを見つける場所を知る必要があります。彼にはプグラムを翻訳する方法に関するインストラクションも必要です。次の例は、プログラムをコマンドラインから翻訳出来る方法を示したものです。
gcc mysql_test.c -o mysql_test -lz \ `/usr/local/mysql/bin/mysql_config --include --libmysqld-libs`
gcc
コマンドの直ぐ後に、Cプログラムファイルの名称を記載します。その後に、-o
オプションを附与して、後に続くファイル名称は、コンパイラーがアウトプットファイルに附与すべき名称であることを示します。コードの次のラインは、含めるファイルとライブラリおよび、そこでそれが翻訳されるシステムに対するその他の設定を告げます。mysql_configに発生した問題に起因して、(圧縮するための)オプション-lz
がここに追加されます。mysql_configピースは、一重引用符でなく、バックチックスの中に含められます。