2011-01-09 27 views
0

JRTPLIBのC++ win32バージョンでVisual Studio2010でコンパイルするといくつか問題が発生しています(http://research.edm.uhasselt.be/~jori/page/index.php?n=CS .Jrtplib)。私は著者に電子メールを送ったが、まだ返信を受け取っていない。私が経験しています問題は、このです:JRTPLIB /ヘッダーに問題があります

error C1083: Cannot open include file: 'rtpconfig_unix.h': No such file or directory c:\users\johan-bar\desktop\developer tools\3rd party software\jrtplib-3.8.1\src\rtpconfig.h 

私が持っている2つの.hファイルが、これらは以下のとおりです。

MAIN.h:

enter code here 
#include <WinSock2.h> 
#include <Windows.h> 
#include <WindowsX.h> 
#include <stdlib.h> 
#include <string> 
#include <Richedit.h> 
#include "jrtlibtest.h" 
#include "resource.h" 

jrtlibtest.h:

#include "rtpsession.h" 

私は、WIN32が定義されていることを認識するために#include windows.hをjrtlibtest.hに入れなければならない(UNIXの.hファイルは含まれていない) )しかし、それは私に約100の再定義エラーを与えます。

この問題を解決する方法がわかりません。ライブラリのホームページ自体やインターネット上の情報は見つかりません。他の誰かがこの問題に遭遇しましたか?私はJRTPLIB C++のlibを見ていないが、あなたは( 'rtpconfig_unix.h'can開くことができません)提供された情報に基づいて、それは、UNIXポートのデフォルトのファイルを取っているようだ?

乾杯

答えて

2

JRTPLIBフォルダ内の設定ファイルのようなものを探し、それを実行します(cygwinまたは何かの./config)。それはあなたのコードに#includeできるWindowsの設定ファイルを生成するはずです。

幸運!

EDIT:あなたがエラーを取得していることを

事実:

error C1083: Cannot open include file: 'rtpconfig_unix.h': 

の意味:あなたのrtpconfig.hで、WIN32マクロが有効になっていません。

#ifndef RTPCONFIG_H 

#define RTPCONFIG_H 

#if (defined(WIN32) || defined(_WIN32_WCE)) 
#include "rtpconfig_win.h" 
#else 
#include "rtpconfig_unix.h" 
#endif // WIN32 

//#define RTPDEBUG 

#endif // RTPCONFIG_H 

とザッツなぜそれがオープンrtpconfig_unix.hファイルを傾けると言う。

rtpconfig.hでwin32マクロを#defineしてみましたか? (またはあなたのプロジェクト設定でそれを行います)。

+0

rtpconfig.hは、基本的にrtpconfig_unix.hまたはrtpconfig_win.hを含めるかどうかを決定します。私はそれをrtpconfig_win.hに常に設定して手動で編集しましたが、大部分のrtprandom.hに最も関連する、大量のコンパイルの問題があります。非常にネストされた問題のように見えます。 – KaiserJohaan

+0

私はちょうどこのlibを見る機会を得ました。私はWindowsでそれをコンパイルすることはできません私は今マックを使用しています。しかし、好奇心のために、あなたはWIN32を有効にしましたか?私はそれを(ルートディレクトリの下にあるREADME.TXTの他のマクロと共に)見つけました。 – Viren

+0

ああ! WIN32マクロはどこで有効にしますか?O_o readmeで見つからない – KaiserJohaan

0

どのような再定義エラーですか?

winsockからのものであれば、インクルードからwinsock2.hを削除すると役立ちます。

+0

main.hを含むmain.cppはwinsock2.hを使用しているため、削除できません – KaiserJohaan

1

プロジェクトにws2_32.libを含めます。同じ問題があった。

(そして、あなたはすでにそれを含める場合、colissionsを避けるためにWSOCK32.LIBとWINSOCK.Hヘッダファイルを削除)

関連する問題