私は#include
のファイル<mysql/mysql.h>
のCコードをいくつか持っています。私はMacで稼働しており、mysql
をインストールする方法を知ることができません(SOにある解決策を実行した後、mysql
ディレクトリはシステムライブラリにも存在しません)。私はソースコードからMySQLをダウンロードすることができましたが、今ではmysql.h
というファイルがソースコードの "include"ディレクトリにあります。手動で.hファイルをシステムライブラリにインポートするにはどうすればよいですか?
しかし、このファイルをシステムライブラリに移動するだけで、明らかに私のプログラムは動作しません。私は私のプログラムにリンク可能にするために、私が行ったライブラリをコンパイルし、バイナリファイルをどこかに移動する必要があると思います。
@ RustyXの提案によれば、私はMac MySQLパッケージをインストールしました。それはmysql.h
のコピーを/usr/local/mysql-5.7.19-macos10.12-x86_64/include/
ディレクトリに置きます。ただし:
1)私はgcc
を使用して.cファイルをコンパイルしています。問題のディレクトリを含めるようにgcc
を設定する方法がわかりません。
ld: library not found for -lmysqlclient
私はmysqlclient
のために含まれる他のパスがあります:インストールされているMac MySQLのパッケージの両方、およびMySQLのソースコードは、私がdownloaded--が、私は次のエラーを取得する - 私は -L(directory path)
を試してみましたか?インストールする別のパッケージですか?
2)それを含めるとしても、被呼び出しファイル名が<mysql/mysql.h>
であり、ファイル名が<include/mysql.h>
であるため、ファイルを見つけることができません。このファイルは他のユーザーによって使用されているため、include
ディレクトリの名前をmysql
に変更するのが最善の方法ですか?または、.cファイルのパスを変更して、コミットする前に毎回変更してください。
えっ... 1をコンパイルして実行するには、
をこのようなステートメントを試してみました/doc/refman/5.6/en/osx-installation-pkg.html)、2)プロジェクトのインクルードパスとlibパスを追加設定する(/ usr/local/mysqlなど) – rustyx
あなたの解決策を試してみた;更新されたステータスについては上記の投稿を参照してください。 – Alex
私はあなたとライブラリを混同していると思います。 'make install'を実行したなら、作成/インストールされたディレクトリとファイルを出力します。インストールの仕方に基づいて、正しい-I引数と-L引数を設定する必要があります。また、あなたはdirと一緒に-Lを試したと言います。そのディレクトリに 'libmysqlclient.dylib'がインストールされていますか? –