标题:弱问:在QT下有谁使用过JRTPLIB库吗?
作者:gxichun
日期:2006-09-26 13:49
内容:
下载了Jrtplib类库,在redhat9.0下编译,都没有错误,打算建一个main.cpp文件:
#include "rtpsession.h"
int main(void)
{
RTPSession sess;
sess.Create(5000);
return 0;
}
保存后,利用终端进入存放该文件的目录test下,然后执行命令:1. qmake -project2. qmake 3.make 4. ./可执行文件
前面两步都没有问题,在第三步就出现了错误:
# qmake -project
# ls
jrtplibjthreadmain.cpptest.pro
# qmake
# ls
jrtplibjthreadmain.cppMakefiletest.pro
# make
Makefile:994: warning: overriding commands for target `jmutex.o'
Makefile:987: warning: ignoring old commands for target `jmutex.o'
Makefile:998: warning: overriding commands for target `jthread.o'
Makefile:991: warning: ignoring old commands for target `jthread.o'
g++ -c -pipe -Wall -W -O2 -march=i386 -mcpu=i686 -g -DGLX_GLXEXT_LEGACY -fno-use-cxa-atexit -fno-exceptions-DQT_NO_DEBUG -I/usr/lib/qt-3.1/mkspecs/default -I. -I. -Ijrtplib/src -Ijthread/src -Ijrtplib/src/extratransmitters -I/usr/lib/qt-3.1/include -o main.o main.cpp
In file included from jrtplib/src/rtpsession.h:44,
from main.cpp:1:
jrtplib/src/rtpsessionsources.h: In constructor
`RTPSessionSources::RTPSessionSources(RTPSession&, RTPMemoryManager*)':
jrtplib/src/rtpsessionsources.h:50: warning: base initializer for `RTPSources'
jrtplib/src/rtpsessionsources.h:50: warning: will be re-ordered to precede
member initializations
main.cpp: In function `int main()':
main.cpp:5: no matching function for call to `RTPSession::Create(int)'
jrtplib/src/rtpsession.h:89: candidates are: int RTPSession::Create(const
RTPSessionParams&, const RTPTransmissionParams* = 0,
RTPTransmitter::TransmissionProtocol = RTPTransmitter::IPv4UDPProto)
jrtplib/src/rtpsession.h:98: int RTPSession::Create(const
RTPSessionParams&,..
#1 [gxichun 09-26 13:56]
2.jthread
# make
Making all in src
make[1]: Entering directory `/root/test/jthread/src'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/test/jthread/src'
Making all in doc
make[1]: Entering directory `/root/test/jthread/doc'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/test/jthread/doc'
Making all in pkgconfig
make[1]: Entering directory `/root/test/jthread/pkgconfig'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/root/test/jthread/pkgconfig'
make[1]: Entering directory `/root/test/jthread'
make[1]: Nothing to be done for `all-am'.
make[1]: Leaving directory `/root/test/jthread'
#2 [fengshenx 10-10 11:35]
main.cpp: In function `int main()':
main.cpp:5: no matching function for call to `RTPSession::Create(int)'
jrtplib/src/rtpsession.h:89: candidates are: int RTPSession::Create(const
RTPSessionParams&, const RTPTransmissionParams* = 0,
RTPTransmitter::TransmissionProtocol = RTPTransmitter::IPv4UDPProto)
jrtplib/src/rtpsession.h:98: int RTPSession::Create(const
RTPSessionParams&, RTPTransmitter*)
make: *** Error
很显然你的函数调错了,没有匹配的函数。
我猜你是看着网上某篇过时的文档写程序。
建议直接下jrtplib的官方文档,照着官方文档做。
另外,jrtplib源码包里有example,你可以先尝试编译那些东西。