私undefined reference to 'mysql_suchandsuch@#'
のプログラムを 5.5 サーバーで提供される MySQL ライブラリにリンクしようとすると、メッセージが表示されます。MySQL をインストールしたとき、デフォルトのパスを使用しました。これは、Windows ではC:\Program Files\MySQL\MySQL Server 5.5\
. もともと、私はスペースが私の悲しみを引き起こしていると思っていましたが、スペースなしでライブラリ パスを指す方法を正しく考え出したと思います (まだ運がありません)。他に考えられる原因があれば教えてください。
問題を解決するために、このサイトの一連の質問を確認しました...
mingw/g++ を使用して、私自身の調査とここでの提案に基づいて、次のオプションを使用してリンクを試みました。
- -L"C:\Program Files\MySQL\MySQL Server 5.5\lib\" -llibmysql.lib
- -L"C:\Program Files\MySQL\MySQL Server 5.5\lib\" -lmysqlclient.lib
- -L"C:\Progra~1\MySQL\MySQLS~1.5\lib\" -llibmysql.lib
- -LC:\Progra~1\MySQL\MySQLS~1.5\lib\ -lmysqlclient.lib
- -L"C:\Progra~1\MySQL\MySQLS~1.5\lib\" -lmysql
すべての場合において、-L
/-l
オプションはステートメントの右端に置きました。これが問題になる可能性があることは理解しています。
ライブラリが存在することを確認しました。/lib ディレクトリには、libmysql.lib、mysqlclient.lib、および libmysql.dll があります。私がレビューしたチュートリアル/フォーラムでそれが示唆されていなかったため、.dll とのリンクは試みていません。
私はMAKEFILESを使用していません。
g++/MySQL の特定の経験がある人はいますか?