2017-02-27 10 views
0

Windows上で同等のlinuxライブラリlibdns_sd.soを使用します。 私は、私が持っている私は、エラーに直面していますdns_sd.h を使用してアプリケーションを構築するためにQT/C++を使用しています:dns_sd.hこのようなファイルやディレクトリのウィンドウはありませんqt

:Linuxの

dns_sd.h: No such file or directory 

を、それは私の.PROファイルに次の行を完璧に動作します

LIBS += /usr/lib/x86_64-linux-gnu/libdns_sd.so 

私はそれを動作させるためにWindowsに何を含めるべきかわかりません。 https://opensource.apple.com/tarballs/mDNSResponder/にmDNSResponderをダウンロードしましたが、含まれるライブラリが見つかりません。

ありがとうございました!

答えて

0

LIBSという変数を使用すると、libdns_sd.so共有ライブラリにリンクされますが、これは表示されている問題とは関係ありません。コンパイラは共有ライブラリが見つからないと不平を言わず、ヘッダファイルが見つからないと不平を言います。dns_sh.h

すべてのプラットフォームで、ヘッダーファイルはインクルードパスに含まれている必要があります。通常、Linuxの場合、devパッケージをインストールすると、ヘッダーファイルは一般に使用されるインクルードパスの1つに置かれます。

Windowsでは、インクルードパスを自分で設定する必要があります。 qmakeの変数INCLUDEPATHを使用してください。あなたのWindowsシステムにdns_sd.hへのパスを追加し、プログラムをコンパイルする必要があります... dllにもリンクしてください。

+0

こんにちはTim!ご回答どうもありがとうございました ! のWin32今彼{ LIBPATH = C:::/Temp/mDNSResponder-576.30.4/mDNSWindows/DLL/ インクルードパス+ = C を/Temp/mDNSResponder-576.30.4/mDNSShared} Iは、これらの行が追加しましたヘッダーファイルを検索しますが、まだ "DNSServiceRegister"やその他の関数の定義されていない参照を作成しますが、関数が定義されていればオートコンプリートなどで確認できます。 何をもう一度見逃しましたか? ありがとう – DevAndroid

関連する問題