live555 メディア サーバー ソースの testProgs ディレクトリにある testOnDemandRTSPServer.cppをコンパイルする方法を見つけようとしています。Ubuntu 11.04 を使用しており、liblivemedia-devライブラリをインストールしました。
ヘッダー インクルード ( testOnDemandRTSPServer.cpp内) を次のように変更しました。
#include <liveMedia/liveMedia.hh>
#include <BasicUsageEnvironment/BasicUsageEnvironment.hh>
そして、このコマンドを使用してコンパイルしました:
g++ -lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment testOnDemandRTSPServer.cpp -o RTSPServer
エラーが発生します。
In file included from /usr/include/liveMedia/MediaSink.hh:25:0,
from /usr/include/liveMedia/RTPSink.hh:25,
from /usr/include/liveMedia/MultiFramedRTPSink.hh:26,
from /usr/include/liveMedia/AudioRTPSink.hh:25,
from /usr/include/liveMedia/MPEG1or2AudioRTPSink.hh:25,
from /usr/include/liveMedia/liveMedia.hh:27,
from testOnDemandRTSPServer.cpp:21:
/usr/include/liveMedia/FramedSource.hh:25:23: fatal error: NetCommon.h: No such file or directory
compilation terminated.
この時点で、私は甘い取引を考え出しました。これは、ヘッダー ファイル間のリダイレクトの問題にすぎません。次に、/usr/ include#include <groupsock/NetCommon.h>
/liveMedia/FramedSource.hhを代わりに使用するように変更しました#include "NetCommon.h"
- NetCommon.h は /usr/include/groupsock/ にあるため
これはうまくいきましたが、次のようなリダイレクトの問題が何百万も見つかりました。
/usr/include/liveMedia/Media.hh:29:22: fatal error: Boolean.hh: No such file or directory
/usr/include/liveMedia/Media.hh:33:31: fatal error: UsageEnvironment.hh: No such file or directory
- 等...
では、そもそも live555 ライブラリに正しくリンクしていますか、それとも必要に応じてヘッダーの場所を常に変更する必要がありますか?
アップデート
そのため、前述の方法を使用してヘッダーの場所を変更し続けましたが、ここに示すように、未定義の参照エラーが100万件発生します(申し訳ありませんが、ここに投稿するには多すぎます)
元の testOnDemandRTSPServer.cpp が問題なくコンパイルされるため (configure/make メソッドを使用)、今は頭を悩ませています。唯一変更したのは、ヘッダー ファイルを探す場所です。