Alright, I've updated to the latest version of live555 and added the function calls, but am running into some odd linking problems. I can see the function definitions in the code, but the linker doesnt. If anyone could give me some insight I'd appreciate it. It's most likely a makefile issue on my end.
-Thanks Alex Wright -----------------------------compiler output------------------- /opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-g++ -I . -I../BasicUsageEnvironment/include -I../UsageEnvironment/include -I../groupsock/include -I../liveMedia/include -I/home/awright/ipnc_26/ipnc/ipnc_app/interface/inc -D_LINUX -g -Wall -O3 -o wis-streamer wis-streamer.o Err.o APPROInput.o WISServerMediaSubsession.o WISJPEGStreamSource.o WISJPEGVideoServerMediaSubsession.o WISMPEG4VideoServerMediaSubsession.o WISH264VideoServerMediaSubsession.o WISPCMAudioServerMediaSubsession.o /home/awright/ipnc_26/ipnc/ipnc_app/interface/lib/Appro_interface.a /home/awright/ipnc_26/ipnc/dvsdk_2_10_01_18/linuxutils_2_24_03/packages/ti/sdo/linuxutils/cmem/lib/cmem.a470MV -L../BasicUsageEnvironment -lBasicUsageEnvironment -L../UsageEnvironment -lUsageEnvironment -L../groupsock -lgroupsock -L../liveMedia -lliveMedia ../groupsock/libgroupsock.a(Groupsock.o): In function `getSocketTable(UsageEnvironment&)': Groupsock.cpp:(.text+0xf0): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(NetInterface.o): In function `SocketLookupTable::SocketLookupTable()': NetInterface.cpp:(.text+0x428): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(NetInterface.o): In function `SocketLookupTable::SocketLookupTable()': NetInterface.cpp:(.text+0x450): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(NetInterface.o): In function `DirectedNetInterfaceSet::DirectedNetInterfaceSet()': NetInterface.cpp:(.text+0x478): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(NetInterface.o): In function `DirectedNetInterfaceSet::DirectedNetInterfaceSet()': NetInterface.cpp:(.text+0x4a0): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(NetInterface.o): In function `DirectedNetInterfaceSet::Iterator::Iterator(DirectedNetInterfaceSet&)': NetInterface.cpp:(.text+0x6e0): undefined reference to `HashTable::Iterator::create(HashTable&)' ../groupsock/libgroupsock.a(NetInterface.o): In function `DirectedNetInterfaceSet::Iterator::Iterator(DirectedNetInterfaceSet&)': NetInterface.cpp:(.text+0x708): undefined reference to `HashTable::Iterator::create(HashTable&)' ../groupsock/libgroupsock.a(NetAddress.o): In function `AddressPortLookupTable::Iterator::Iterator(AddressPortLookupTable&)': NetAddress.cpp:(.text+0x268): undefined reference to `HashTable::Iterator::create(HashTable&)' ../groupsock/libgroupsock.a(NetAddress.o): In function `AddressPortLookupTable::Iterator::Iterator(AddressPortLookupTable&)': NetAddress.cpp:(.text+0x290): undefined reference to `HashTable::Iterator::create(HashTable&)' ../groupsock/libgroupsock.a(NetAddress.o): In function `AddressPortLookupTable::AddressPortLookupTable()': NetAddress.cpp:(.text+0x2b8): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(NetAddress.o): In function `AddressPortLookupTable::AddressPortLookupTable()': NetAddress.cpp:(.text+0x2e0): undefined reference to `HashTable::create(int)' ../groupsock/libgroupsock.a(GroupEId.o): In function `Scope::assign(unsigned char, char const*)': GroupEId.cpp:(.text+0x84): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(Media.o): In function `MediaLookupTable::MediaLookupTable(UsageEnvironment&)': Media.cpp:(.text+0x24c): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(Media.o): In function `MediaLookupTable::MediaLookupTable(UsageEnvironment&)': Media.cpp:(.text+0x280): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(MPEG4GenericRTPSink.o): In function `MPEG4GenericRTPSink::MPEG4GenericRTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, char const*, char const*, unsigned int)': MPEG4GenericRTPSink.cpp:(.text+0x220): undefined reference to `strDup(char const*)' MPEG4GenericRTPSink.cpp:(.text+0x22c): undefined reference to `strDup(char const*)' MPEG4GenericRTPSink.cpp:(.text+0x238): undefined reference to `strDup(char const*)' MPEG4GenericRTPSink.cpp:(.text+0x2bc): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(MPEG4GenericRTPSink.o): In function `MPEG4GenericRTPSink::MPEG4GenericRTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, char const*, char const*, unsigned int)': MPEG4GenericRTPSink.cpp:(.text+0x418): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(MPEG4GenericRTPSink.o):MPEG4GenericRTPSink.cpp:(.text+0x424): more undefined references to `strDup(char const*)' follow ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::Iterator::Iterator(RTPTransmissionStatsDB&)': RTPSink.cpp:(.text+0x63c): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::Iterator::Iterator(RTPTransmissionStatsDB&)': RTPSink.cpp:(.text+0x664): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::~RTPTransmissionStatsDB()': RTPSink.cpp:(.text+0x72c): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::~RTPTransmissionStatsDB()': RTPSink.cpp:(.text+0x78c): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::~RTPTransmissionStatsDB()': RTPSink.cpp:(.text+0x7e4): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::RTPTransmissionStatsDB(RTPSink&)': RTPSink.cpp:(.text+0x830): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPTransmissionStatsDB::RTPTransmissionStatsDB(RTPSink&)': RTPSink.cpp:(.text+0x864): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPSink::RTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int)': RTPSink.cpp:(.text+0xa84): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPSink::RTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int)': RTPSink.cpp:(.text+0xb90): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTPSink.o): In function `RTPSink::rtpmapLine() const': RTPSink.cpp:(.text+0xd48): undefined reference to `strDup(char const*)' RTPSink.cpp:(.text+0xd60): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTPInterface.o): In function `SocketDescriptor::SocketDescriptor(UsageEnvironment&, int)': RTPInterface.cpp:(.text+0x27c): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTPInterface.o): In function `SocketDescriptor::SocketDescriptor(UsageEnvironment&, int)': RTPInterface.cpp:(.text+0x2b8): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTPInterface.o): In function `socketHashTable(UsageEnvironment&, unsigned int)': RTPInterface.cpp:(.text+0x300): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTCP.o): In function `RTCPInstance::RTCPInstance(UsageEnvironment&, Groupsock*, unsigned int, unsigned char const*, RTPSink*, RTPSource const*, unsigned int)': RTCP.cpp:(.text+0x1624): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTCP.o): In function `RTCPMemberDatabase::reapOldMembers(unsigned int)': RTCP.cpp:(.text+0x17ac): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTCP.o): In function `RTCPInstance::RTCPInstance(UsageEnvironment&, Groupsock*, unsigned int, unsigned char const*, RTPSink*, RTPSource const*, unsigned int)': RTCP.cpp:(.text+0x199c): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `UserAuthenticationDatabase::addUserRecord(char const*, char const*)': RTSPServer.cpp:(.text+0x2b4): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `UserAuthenticationDatabase::UserAuthenticationDatabase(char const*, unsigned int)': RTSPServer.cpp:(.text+0x478): undefined reference to `HashTable::create(int)' RTSPServer.cpp:(.text+0x48c): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `UserAuthenticationDatabase::UserAuthenticationDatabase(char const*, unsigned int)': RTSPServer.cpp:(.text+0x4c4): undefined reference to `HashTable::create(int)' RTSPServer.cpp:(.text+0x4d8): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::ServerMediaSessionIterator::ServerMediaSessionIterator(RTSPServer&)': RTSPServer.cpp:(.text+0x518): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::ServerMediaSessionIterator::ServerMediaSessionIterator(RTSPServer&)': RTSPServer.cpp:(.text+0x550): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::RTSPClientSession::handleHTTPCmd_TunnelingGET(char const*)': RTSPServer.cpp:(.text+0x5b4): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::RTSPClientSession::authenticationOK(char const*, char const*, char const*, char const*)': RTSPServer.cpp:(.text+0x6d0): undefined reference to `strDupSize(char const*)' RTSPServer.cpp:(.text+0x6dc): undefined reference to `strDupSize(char const*)' RTSPServer.cpp:(.text+0x74c): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0x978): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0x9b0): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0x9e8): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0xa0c): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTSPServer.o):RTSPServer.cpp:(.text+0x19ec): more undefined references to `strDup(char const*)' follow ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::RTSPClientSession::handleCmd_SETUP(char const*, char const*, char const*, char const*)': RTSPServer.cpp:(.text+0x2a50): undefined reference to `strDupSize(char const*)' RTSPServer.cpp:(.text+0x2cd4): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0x2ce4): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0x2da0): undefined reference to `strDup(char const*)' RTSPServer.cpp:(.text+0x2f38): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::RTSPServer(UsageEnvironment&, int, Port, UserAuthenticationDatabase*, unsigned int)': RTSPServer.cpp:(.text+0x35a4): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::RTSPServer(UsageEnvironment&, int, Port, UserAuthenticationDatabase*, unsigned int)': RTSPServer.cpp:(.text+0x36d4): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::~RTSPServer()': RTSPServer.cpp:(.text+0x37d0): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::~RTSPServer()': RTSPServer.cpp:(.text+0x39fc): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTSPServer.o): In function `RTSPServer::~RTSPServer()': RTSPServer.cpp:(.text+0x3c28): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(ServerMediaSession.o): In function `ServerMediaSubsession::rangeSDPLine() const': ServerMediaSession.cpp:(.text+0x35c): undefined reference to `strDup(char const*)' ServerMediaSession.cpp:(.text+0x390): undefined reference to `strDup(char const*)' ServerMediaSession.cpp:(.text+0x3bc): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(ServerMediaSession.o): In function `ServerMediaSubsession::trackId()': ServerMediaSession.cpp:(.text+0x414): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(ServerMediaSession.o): In function `ServerMediaSession::generateSDPDescription()': ServerMediaSession.cpp:(.text+0x7a4): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(ServerMediaSession.o):ServerMediaSession.cpp:(.text+0x8a0): more undefined references to `strDup(char const*)' follow ../liveMedia/libliveMedia.a(OnDemandServerMediaSubsession.o): In function `OnDemandServerMediaSubsession::~OnDemandServerMediaSubsession()': OnDemandServerMediaSubsession.cpp:(.text+0x738): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(OnDemandServerMediaSubsession.o): In function `OnDemandServerMediaSubsession::~OnDemandServerMediaSubsession()': OnDemandServerMediaSubsession.cpp:(.text+0x7c4): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(OnDemandServerMediaSubsession.o): In function `OnDemandServerMediaSubsession::~OnDemandServerMediaSubsession()': OnDemandServerMediaSubsession.cpp:(.text+0x848): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(OnDemandServerMediaSubsession.o): In function `OnDemandServerMediaSubsession::OnDemandServerMediaSubsession(UsageEnvironment&, unsigned int, unsigned short)': OnDemandServerMediaSubsession.cpp:(.text+0x8d0): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(OnDemandServerMediaSubsession.o): In function `OnDemandServerMediaSubsession::OnDemandServerMediaSubsession(UsageEnvironment&, unsigned int, unsigned short)': OnDemandServerMediaSubsession.cpp:(.text+0x940): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(DigestAuthentication.o): In function `Authenticator::assignUsernameAndPassword(char const*, char const*, unsigned int)': DigestAuthentication.cpp:(.text+0x14): undefined reference to `strDup(char const*)' DigestAuthentication.cpp:(.text+0x20): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(DigestAuthentication.o): In function `Authenticator::assignRealmAndNonce(char const*, char const*)': DigestAuthentication.cpp:(.text+0x44): undefined reference to `strDup(char const*)' DigestAuthentication.cpp:(.text+0x50): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(Base64.o): In function `base64Decode(char*, unsigned int&, unsigned int)': Base64.cpp:(.text+0x258): undefined reference to `strDupSize(char const*)' ../liveMedia/libliveMedia.a(Locale.o): In function `Locale::Locale(char const*, int)': Locale.cpp:(.text+0xf0): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(Locale.o): In function `Locale::Locale(char const*, int)': Locale.cpp:(.text+0x138): undefined reference to `strDup(char const*)' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::Iterator::Iterator(RTPReceptionStatsDB&)': RTPSource.cpp:(.text+0x8b0): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::Iterator::Iterator(RTPReceptionStatsDB&)': RTPSource.cpp:(.text+0x8d8): undefined reference to `HashTable::Iterator::create(HashTable&)' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::~RTPReceptionStatsDB()': RTPSource.cpp:(.text+0xa44): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::~RTPReceptionStatsDB()': RTPSource.cpp:(.text+0xaa4): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::~RTPReceptionStatsDB()': RTPSource.cpp:(.text+0xafc): undefined reference to `HashTable::RemoveNext()' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::RTPReceptionStatsDB()': RTPSource.cpp:(.text+0xba4): undefined reference to `HashTable::create(int)' ../liveMedia/libliveMedia.a(RTPSource.o): In function `RTPReceptionStatsDB::RTPReceptionStatsDB()': RTPSource.cpp:(.text+0xbdc): undefined reference to `HashTable::create(int)' collect2: ld returned 1 exit status make: *** [wis-streamer] Error 1 ------------------------------------makefile------------------------------ ROOTDIR = ../../../.. include $(ROOTDIR)/Rules.make LIVE_DIR = .. EXEC = wis-streamer all: $(EXEC) install: $(EXEC) install $(EXEC) $(EXEC_DIR) CC = $(MVTOOL_PREFIX)gcc CPLUSPLUS = $(MVTOOL_PREFIX)g++ INCLUDES = -I . \ -I$(LIVE_DIR)/BasicUsageEnvironment/include \ -I$(LIVE_DIR)/UsageEnvironment/include \ -I$(LIVE_DIR)/groupsock/include \ -I$(LIVE_DIR)/liveMedia/include \ -I$(PUBLIC_INCLUDE_DIR) CFLAGS = $(INCLUDES) -D_LINUX -g -Wall -O3 LIBS = $(CMEM_INSTALL_DIR)/packages/ti/sdo/linuxutils/cmem/lib/cmem.a470MV \ -L$(LIVE_DIR)/BasicUsageEnvironment -lBasicUsageEnvironment \ -L$(LIVE_DIR)/UsageEnvironment -lUsageEnvironment \ -L$(LIVE_DIR)/groupsock -lgroupsock \ -L$(LIVE_DIR)/liveMedia -lliveMedia OBJS = wis-streamer.o Err.o APPROInput.o \ WISServerMediaSubsession.o \ WISJPEGStreamSource.o \ WISJPEGVideoServerMediaSubsession.o \ WISMPEG4VideoServerMediaSubsession.o \ WISH264VideoServerMediaSubsession.o \ WISPCMAudioServerMediaSubsession.o \ $(APP_LIB_DIR)/Appro_interface.a $(EXEC): $(OBJS) $(CPLUSPLUS) $(CFLAGS) -o $(EXEC) $(OBJS) $(LIBS) wis-streamer.cpp: Err.hh Err.cpp: Err.hh APPROInput.cpp: APPROInput.hh Err.hh WISServerMediaSubsession.cpp: WISServerMediaSubsession.hh WISServerMediaSubsession.hh: APPROInput.hh WISMPEG4VideoServerMediaSubsession.hh: WISServerMediaSubsession.hh WISMPEG4VideoServerMediaSubsession.cpp: WISMPEG4VideoServerMediaSubsession.hh WISH264VideoServerMediaSubsession.hh: WISServerMediaSubsession.hh WISH264VideoServerMediaSubsession.cpp: WISH264VideoServerMediaSubsession.hh WISJPEGStreamSource.cpp: WISJPEGStreamSource.hh WISPCMAudioServerMediaSubsession.cpp: WISPCMAudioServerMediaSubsession.hh .c.o: $(CC) -c $(CFLAGS) $< -o $@ .cpp.o: $(CPLUSPLUS) -c $(CFLAGS) $< -o $@ clean: rm -f *.o *~ rm -f $(EXEC) _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel