質問

私は、64ビットのCentOS 5.4にはmysqlclientライブラリとアプリケーションをリンクし、(-lmysqlclientを見つけることができません)リンクエラーを取得しています。

:ライブラリは、/ usr / lib64に/ mysqlの/です
una@localhost$ ll /usr/lib64/mysql/
total 9072
    ...
lrwxrwxrwx 1 root root      26 Jan  3 15:54 libmysqlclient_r.so -> libmysqlclient_r.so.15.0.0
lrwxrwxrwx 1 root root      26 Jan  3 15:54 libmysqlclient_r.so.15 -> libmysqlclient_r.so.15.0.0
-rwxr-xr-x 1 root root 1518456 Sep  4 01:28 libmysqlclient_r.so.15.0.0
lrwxrwxrwx 1 root root      24 Jan  3 15:54 libmysqlclient.so -> libmysqlclient.so.15.0.0
lrwxrwxrwx 1 root root      24 Jan  3 15:54 libmysqlclient.so.15 -> libmysqlclient.so.15.0.0
-rwxr-xr-x 1 root root 1514000 Sep  4 01:28 libmysqlclient.so.15.0.0
     ...

とディレクトリが正しく、Linuxのリンカのために登録しているようだ。

una@localhost$ cat /etc/ld.so.conf.d/mysql-x86_64.conf 
/usr/lib64/mysql

私はこのマシン上でアプリケーションをリンクすることができる唯一の方法は、私の場合は受け入れられないライブラリファイルにのフルパスのを指定することです。 ここで問題を引き起こす可能性がありますか?

感謝します。

役に立ちましたか?

解決

-L/usr/lib64/mysql

ld.so.confのもののみを実行時ではなく、コンパイル時に使用されます。

他のヒント

は/ usr / lib64に/ mysqlのあなたのgccのデフォルトの検索パスに、確かではありません。あなたが配布この種のlibmysqlclientののインストールパスを検索するためにautoconfスクリプトを使用して、動的に-Lフラグで見つかった場所を使用することができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top