mingwを介してWindowsにクロスコンパイルされたプロジェクトでlibmysqlclientを使用したいと思います。プログラムをリンクするには、「mysqlclient.a」が必要ですが、取得できません。
mysqlクライアントのWindowsでmingwのmakefileを作成しようとしましたが、構成手順が失敗します。
私は最終的にそれを構築することができました...Windowsでmingwを使用しました。
手順は次のとおりです。
- cygwinをインストールする
- パッケージmake、gcc、g ++、cmake、cygidnをcygwinにインストールします
- libmysqlソースコードをダウンロードして解凍します
- ファイルstrings/dtoa.cを編集し、発生するすべてのものを他の
dtoa
何かに置き換え_dtoa
て、競合を防ぎます - パッケージベースにCD
- mingwにcmake-G"UnixMakefiles"と入力します
- 作る
- インストールする
- C:\ cygwin \ usr \ local \ mysql \ include \ mysql.hを編集し、
#include <winsock.h> /* Bug win32 */
後に追加します#define _mysql_h
- ファイルは「C:\ cygwin \ usr \ local\mysql」で入手できます。
「libmysqlclient.a」と「liblibmysql.dll.a」を取得し、プログラムをそれらにリンクしましたが、それでもリンカーエラーが発生します。どうしたの ?しかし、それでもリンクエラーが発生します!
strings libmysqlclient.a | grep _mysql_ping
リンカが`_mysql_ping@ 4'への未定義の参照について文句を言う間、結果を返します