私は2つのプロジェクトを持っています.1つはlibpqヘッダーと実行可能ファイルを使用するライブラリで、私のライブラリとlibpqにリンクしますが、makefileをどのように入れても、 libpqとawaysは私に未定義の参照エラーを返します。それは私のlibの大丈夫にリンクします。libpq関数の定義されていない参照
g++ -o MYAPP main.o -L../Libs -lpq -lMYLIB
libpq.aとlibmylib.aの両方がLibsディレクトリ内にあります。
nmを使って関数をチェックしましたが、-lpqを-lpq_に変更しました。コンパイラは欠落しているlibについて不平を言っています。
これは本当に私を悩ましています、それは何でしょうか?
(私の英語は申し訳ありませんが、良いことではありません)
おかげで、
ジョナサン
私はextern "C" {#include "libpq-fe.h"}を追加して動作しませんでした – Jonathan
AFAIK、リンク順序はダイナミックライブラリとは関係ありませんが、まだ試していない場合は、 '-lpq'と' -lMYLIB'を逆にします。 – dennycrane
私はそれをしてくれました、そして、それは私に道徳的な誤りを与えてくれますが、kerberusのようなlibpqの中の他のもののために、私は悩まされていました。しかし、今は働いています...私がしたことは、私がリンク目的のために作成したLibsディレクトリを削除し、libpqをapt-getでインストールし、g ++リンクをこの新しいlibにすることでした。 。他の図書館とリンクしていると思いますか?これは私にとってちょっとしたニュースです。誰かが説明して裸の場合... – Jonathan