- 締切済み
Cコンパイル時にポスグレのライブラリが見つからない
LinuxでC言語にてコンパイルをする際に(makefileを使用)にポスグレのライブラリが見つからないという下記エラーが出力されます。 しかしポスグレのライブラリはmakefileにて指定した箇所(-Lオプションにて/opt/prov/pgsql/libを指定)に存在しています。 makefileに誤りがなく、シンボリックリンクも正確に貼られていると考えると他にどのような原因が考えられるのでしょうか?(環境変数の設定等でしょうか??) エラー ------------- /usr/bin/ld: skipping incompatible /opt/prov/pgsql/lib/libpq.so when searching for -lpq /usr/bin/ld: skipping incompatible /opt/prov/pgsql/lib/libpq.a when searching for -lpq /usr/bin/ld: cannot find -lpq ボスグレのライブラリは存在している ---------- -rw-r--r-- 1 postgres postgres 126994 X月 XX 16:XX /opt/prov/pgsql/lib/libpq.a lrwxrwxrwx 1 postgres postgres 12 X月 XX 16:XX /opt/prov/pgsql/lib/libpq.so -> libpq.so.2.2 lrwxrwxrwx 1 postgres postgres 12 X月 XX 16:XX /opt/prov/pgsql/lib/libpq.so.2 -> libpq.so.2.2 -rwxr-xr-x 1 postgres postgres 90659 X月 XX 16:XX /opt/prov/pgsql/lib/libpq.so.2.2
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- entree
- ベストアンサー率55% (405/735)
環境が x86-64 で /opt/prov/pgsql/lib/libpq.so ではなく /opt/prov/pgsql/lib64/libpq.so とリンクしなければならないということはありませんか? であれば、configure時に適切にLDFLAGSを設定しておく必要があります。 LDFLAGS=-L/opt/prov/pgsql/lib64 \ LD_LIBRARY_PATH=/opt/prov/pgsql/lib64 \ ./configure ...
- Tacosan
- ベストアンサー率23% (3656/15482)
ld のメッセージから原因を推測できませんか?