Hi, I've already got an error when building with Ubuntu 18.04.
Firstly, I built the Live555 library, after that, I created a CMakeLists file and link to this library in the "usr/local/library" folder. But I got errors like this:
[ 16%] Linking CXX executable RTSPTest /usr/local/lib/libgroupsock.a(NetAddress.o): In function AddressPortLookupTable::AddressPortLookupTable()':
NetAddress.cpp:(.text+0x770): undefined reference to HashTable::create(int)' /usr/local/lib/libgroupsock.a(NetAddress.o): In function AddressPortLookupTable::Iterator::Iterator(AddressPortLookupTable&)':
NetAddress.cpp:(.text+0x8d0): undefined reference to HashTable::Iterator::create(HashTable const&)' /usr/local/lib/libliveMedia.a(Media.o): In function MediaLookupTable::ourMedia(UsageEnvironment&)':
Media.cpp:(.text+0x20c): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(Media.o): In function MediaLookupTable::MediaLookupTable(UsageEnvironment&)':
Media.cpp:(.text+0x560): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPSink.o): In function RTPTransmissionStatsDB::RTPTransmissionStatsDB(RTPSink&)':
RTPSink.cpp:(.text+0x4b4): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPSink.o): In function RTPTransmissionStatsDB::Iterator::Iterator(RTPTransmissionStatsDB&)':
RTPSink.cpp:(.text+0x580): undefined reference to HashTable::Iterator::create(HashTable const&)' /usr/local/lib/libliveMedia.a(RTPSink.o): In function RTPSink::RTPSink(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, char const*, unsigned int)':
RTPSink.cpp:(.text+0xa58): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPInterface.o): In function socketHashTable(UsageEnvironment&, unsigned char)':
RTPInterface.cpp:(.text+0xa0): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPInterface.o): In function lookupSocketDescriptor(UsageEnvironment&, int, unsigned char)':
RTPInterface.cpp:(.text+0x190): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPInterface.o): In function RTPInterface::RTPInterface(Medium*, Groupsock*)':
RTPInterface.cpp:(.text+0x26c): undefined reference to makeSocketNonBlocking(int)' RTPInterface.cpp:(.text+0x288): undefined reference to increaseSendBufferTo(UsageEnvironment&, int, unsigned int)'
/usr/local/lib/libliveMedia.a(RTPInterface.o): In function RTPInterface::handleRead(unsigned char*, unsigned int, unsigned int&, sockaddr_in&, int&, unsigned char&, unsigned char&)': RTPInterface.cpp:(.text+0x378): undefined reference to readSocket(UsageEnvironment&, int, unsigned char*, unsigned int, sockaddr_in&)'
/usr/local/lib/libliveMedia.a(RTPInterface.o): In function SocketDescriptor::SocketDescriptor(UsageEnvironment&, int)': RTPInterface.cpp:(.text+0x4c4): undefined reference to HashTable::create(int)'
/usr/local/lib/libliveMedia.a(RTPInterface.o): In function RTPInterface::setStreamSocket(int, unsigned char)': RTPInterface.cpp:(.text+0x6e8): undefined reference to Groupsock::removeAllDestinations()'
RTPInterface.cpp:(.text+0x71c): undefined reference to Socket::reset()' /usr/local/lib/libliveMedia.a(RTPInterface.o): In function RTPInterface::sendDataOverTCP(int, unsigned char const*, unsigned int, unsigned char)':
RTPInterface.cpp:(.text+0x954): undefined reference to makeSocketBlocking(int, unsigned int)' RTPInterface.cpp:(.text+0x9a4): undefined reference to makeSocketNonBlocking(int)'
/usr/local/lib/libliveMedia.a(RTPInterface.o): In function SocketDescriptor::~SocketDescriptor()': RTPInterface.cpp:(.text+0xc0c): undefined reference to HashTable::Iterator::create(HashTable const&)'
/usr/local/lib/libliveMedia.a(RTPInterface.o): In function SocketDescriptor::tcpReadHandler1(int)': RTPInterface.cpp:(.text+0xe8c): undefined reference to readSocket(UsageEnvironment&, int, unsigned char*, unsigned int, sockaddr_in&)'
RTPInterface.cpp:(.text+0x1000): undefined reference to readSocket(UsageEnvironment&, int, unsigned char*, unsigned int, sockaddr_in&)' /usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function GenericMediaServer::closeAllClientSessionsForServerMediaSession(ServerMediaSession*) [clone .part.9]':
GenericMediaServer.cpp:(.text+0x390): undefined reference to HashTable::Iterator::create(HashTable const&)' /usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function GenericMediaServer::GenericMediaServer(UsageEnvironment&, int, Port, unsigned int)':
GenericMediaServer.cpp:(.text+0x600): undefined reference to HashTable::create(int)' GenericMediaServer.cpp:(.text+0x60c): undefined reference to HashTable::create(int)'
GenericMediaServer.cpp:(.text+0x618): undefined reference to HashTable::create(int)' GenericMediaServer.cpp:(.text+0x624): undefined reference to ignoreSigPipeOnSocket(int)'
/usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function GenericMediaServer::setUpOurSocket(UsageEnvironment&, Port&)': GenericMediaServer.cpp:(.text+0x7d8): undefined reference to setupStreamSocket(UsageEnvironment&, Port, unsigned char)'
GenericMediaServer.cpp:(.text+0x848): undefined reference to increaseSendBufferTo(UsageEnvironment&, int, unsigned int)' GenericMediaServer.cpp:(.text+0x874): undefined reference to getSourcePort(UsageEnvironment&, int, Port&)'
/usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function GenericMediaServer::incomingConnectionHandlerOnSocket(int)': GenericMediaServer.cpp:(.text+0x8d8): undefined reference to ignoreSigPipeOnSocket(int)'
GenericMediaServer.cpp:(.text+0x8e0): undefined reference to makeSocketNonBlocking(int)' GenericMediaServer.cpp:(.text+0x8f0): undefined reference to increaseSendBufferTo(UsageEnvironment&, int, unsigned int)'
/usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function GenericMediaServer::ClientConnection::incomingRequestHandler()': GenericMediaServer.cpp:(.text+0xb38): undefined reference to readSocket(UsageEnvironment&, int, unsigned char*, unsigned int, sockaddr_in&)'
/usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function GenericMediaServer::ServerMediaSessionIterator::ServerMediaSessionIterator(GenericMediaServer&)': GenericMediaServer.cpp:(.text+0xddc): undefined reference to HashTable::Iterator::create(HashTable const&)'
/usr/local/lib/libliveMedia.a(GenericMediaServer.o): In function UserAuthenticationDatabase::UserAuthenticationDatabase(char const*, unsigned char)': GenericMediaServer.cpp:(.text+0xe84): undefined reference to HashTable::create(int)'
/usr/local/lib/libliveMedia.a(RTSPServer.o): In function RTSPServer::RTSPClientConnection::handleHTTPCmd_TunnelingGET(char const*)': RTSPServer.cpp:(.text+0x19c): undefined reference to HashTable::create(int)'
/usr/local/lib/libliveMedia.a(RTSPServer.o): In function RTSPServer::RTSPServer(UsageEnvironment&, int, Port, UserAuthenticationDatabase*, unsigned int)': RTSPServer.cpp:(.text+0xd44): undefined reference to HashTable::create(int)'
RTSPServer.cpp:(.text+0xd50): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTSPServer.o): In function RTSPServer::RTSPClientConnection::handleHTTPCmd_TunnelingPOST(char const*, unsigned char const*, unsigned int)':
RTSPServer.cpp:(.text+0x2480): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTSPServer.o): In function RTSPServer::rtspURLPrefix(int) const':
RTSPServer.cpp:(.text+0x2824): undefined reference to ReceivingInterfaceAddr' RTSPServer.cpp:(.text+0x2828): undefined reference to ReceivingInterfaceAddr'
RTSPServer.cpp:(.text+0x2928): undefined reference to ourIPAddress(UsageEnvironment&)' /usr/local/lib/libliveMedia.a(RTSPServer.o): In function RTSPServer::RTSPClientSession::handleCmd_SETUP(RTSPServer::RTSPClientConnection*, char const*, char const*, char const*)':
RTSPServer.cpp:(.text+0x3824): undefined reference to SendingInterfaceAddr' RTSPServer.cpp:(.text+0x3830): undefined reference to SendingInterfaceAddr'
RTSPServer.cpp:(.text+0x3844): undefined reference to ReceivingInterfaceAddr' RTSPServer.cpp:(.text+0x386c): undefined reference to ReceivingInterfaceAddr'
/usr/local/lib/libliveMedia.a(RTSPClient.o): In function RTSPClient::openConnection()': RTSPClient.cpp:(.text+0x3e3c): undefined reference to setupStreamSocket(UsageEnvironment&, Port, unsigned char)'
RTSPClient.cpp:(.text+0x3e48): undefined reference to ignoreSigPipeOnSocket(int)' /usr/local/lib/libliveMedia.a(RTSPClient.o): In function RTSPClient::responseHandlerForHTTP_GET1(int, char*)':
RTSPClient.cpp:(.text+0x4448): undefined reference to setupStreamSocket(UsageEnvironment&, Port, unsigned char)' RTSPClient.cpp:(.text+0x4548): undefined reference to ignoreSigPipeOnSocket(int)'
/usr/local/lib/libliveMedia.a(RTSPClient.o): In function RTSPClient::incomingDataHandler1()': RTSPClient.cpp:(.text+0x6210): undefined reference to readSocket(UsageEnvironment&, int, unsigned char*, unsigned int, sockaddr_in&)'
/usr/local/lib/libliveMedia.a(MediaSession.o): In function MediaSubsession::initiate(int)': MediaSession.cpp:(.text+0x2558): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, in_addr const&, Port)'
MediaSession.cpp:(.text+0x25ac): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, in_addr const&, Port)' MediaSession.cpp:(.text+0x25e4): undefined reference to increaseReceiveBufferTo(UsageEnvironment&, int, unsigned int)'
MediaSession.cpp:(.text+0x2618): undefined reference to Groupsock::changeDestinationParameters(in_addr const&, Port, int, unsigned int)' MediaSession.cpp:(.text+0x26a8): undefined reference to HashTable::create(int)'
MediaSession.cpp:(.text+0x26e4): undefined reference to NoReuse::NoReuse(UsageEnvironment&)' MediaSession.cpp:(.text+0x2720): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, in_addr const&, Port)'
MediaSession.cpp:(.text+0x2748): undefined reference to getSourcePort(UsageEnvironment&, int, Port&)' MediaSession.cpp:(.text+0x27a8): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, in_addr const&, Port)'
MediaSession.cpp:(.text+0x27f0): undefined reference to NoReuse::~NoReuse()' MediaSession.cpp:(.text+0x2864): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, Port, unsigned char)'
MediaSession.cpp:(.text+0x28e4): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, Port, unsigned char)' MediaSession.cpp:(.text+0x290c): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, Port, unsigned char)'
MediaSession.cpp:(.text+0x2914): undefined reference to NoReuse::~NoReuse()' MediaSession.cpp:(.text+0x29a4): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, Port, unsigned char)'
MediaSession.cpp:(.text+0x2a30): undefined reference to NoReuse::~NoReuse()' /usr/local/lib/libliveMedia.a(MediaSession.o): In function MediaSubsession::setDestinations(unsigned int)':
MediaSession.cpp:(.text+0x2bcc): undefined reference to Groupsock::changeDestinationParameters(in_addr const&, Port, int, unsigned int)' MediaSession.cpp:(.text+0x2c30): undefined reference to Groupsock::changeDestinationParameters(in_addr const&, Port, int, unsigned int)'
/usr/local/lib/libliveMedia.a(MediaSession.o): In function MediaSubsession::MediaSubsession(MediaSession&)': MediaSession.cpp:(.text+0x3068): undefined reference to HashTable::create(int)'
/usr/local/lib/libliveMedia.a(ServerMediaSession.o): In function ServerMediaSession::generateSDPDescription()': ServerMediaSession.cpp:(.text+0xb20): undefined reference to ourIPAddress(UsageEnvironment&)'
/usr/local/lib/libliveMedia.a(OnDemandServerMediaSubsession.o): In function OnDemandServerMediaSubsession::getStreamParameters(unsigned int, unsigned int, Port const&, Port const&, int, unsigned char, unsigned char, unsigned int&, unsigned char&, unsigned char&, Port&, Port&, void*&)': OnDemandServerMediaSubsession.cpp:(.text+0x29c): undefined reference to NoReuse::NoReuse(UsageEnvironment&)'
OnDemandServerMediaSubsession.cpp:(.text+0x374): undefined reference to NoReuse::~NoReuse()' OnDemandServerMediaSubsession.cpp:(.text+0x37c): undefined reference to Groupsock::removeAllDestinations()'
OnDemandServerMediaSubsession.cpp:(.text+0x384): undefined reference to Groupsock::removeAllDestinations()' OnDemandServerMediaSubsession.cpp:(.text+0x394): undefined reference to NoReuse::NoReuse(UsageEnvironment&)'
OnDemandServerMediaSubsession.cpp:(.text+0x408): undefined reference to NoReuse::~NoReuse()' OnDemandServerMediaSubsession.cpp:(.text+0x410): undefined reference to Groupsock::removeAllDestinations()'
OnDemandServerMediaSubsession.cpp:(.text+0x43c): undefined reference to increaseSendBufferTo(UsageEnvironment&, int, unsigned int)' OnDemandServerMediaSubsession.cpp:(.text+0x55c): undefined reference to NoReuse::~NoReuse()'
/usr/local/lib/libliveMedia.a(OnDemandServerMediaSubsession.o): In function OnDemandServerMediaSubsession::createGroupsock(in_addr const&, Port)': OnDemandServerMediaSubsession.cpp:(.text+0x5c8): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, Port, unsigned char)'
/usr/local/lib/libliveMedia.a(OnDemandServerMediaSubsession.o): In function OnDemandServerMediaSubsession::OnDemandServerMediaSubsession(UsageEnvironment&, unsigned char, unsigned short, unsigned char)': OnDemandServerMediaSubsession.cpp:(.text+0x828): undefined reference to HashTable::create(int)'
/usr/local/lib/libliveMedia.a(ProxyServerMediaSession.o): In function ProxyServerMediaSession::createGroupsock(in_addr const&, Port)': ProxyServerMediaSession.cpp:(.text+0x70): undefined reference to Groupsock::Groupsock(UsageEnvironment&, in_addr const&, Port, unsigned char)'
/usr/local/lib/libliveMedia.a(BasicUDPSource.o): In function BasicUDPSource::BasicUDPSource(UsageEnvironment&, Groupsock*)': BasicUDPSource.cpp:(.text+0x170): undefined reference to increaseReceiveBufferTo(UsageEnvironment&, int, unsigned int)'
BasicUDPSource.cpp:(.text+0x17c): undefined reference to makeSocketNonBlocking(int)' /usr/local/lib/libliveMedia.a(MPEG2TransportStreamFramer.o): In function MPEG2TransportStreamFramer::MPEG2TransportStreamFramer(UsageEnvironment&, FramedSource*)':
MPEG2TransportStreamFramer.cpp:(.text+0xb0): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPSource.o): In function RTPReceptionStatsDB::reset()':
RTPSource.cpp:(.text+0x234): undefined reference to HashTable::Iterator::create(HashTable const&)' /usr/local/lib/libliveMedia.a(RTPSource.o): In function RTPReceptionStatsDB::RTPReceptionStatsDB()':
RTPSource.cpp:(.text+0x2e8): undefined reference to HashTable::create(int)' /usr/local/lib/libliveMedia.a(RTPSource.o): In function RTPReceptionStatsDB::Iterator::Iterator(RTPReceptionStatsDB&)':
RTPSource.cpp:(.text+0x4d0): undefined reference to HashTable::Iterator::create(HashTable const&)' /usr/local/lib/libliveMedia.a(MultiFramedRTPSource.o): In function MultiFramedRTPSource::MultiFramedRTPSource(UsageEnvironment&, Groupsock*, unsigned char, unsigned int, BufferedPacketFactory*)':
MultiFramedRTPSource.cpp:(.text+0x27c): undefined reference to increaseReceiveBufferTo(UsageEnvironment&, int, unsigned int)' /usr/local/lib/libliveMedia.a(RTCP.o): In function RTCPInstance::incomingReportHandler1()':
RTCP.cpp:(.text+0x988): undefined reference to Groupsock::wasLoopedBackFromUs(UsageEnvironment&, sockaddr_in&)' /usr/local/lib/libliveMedia.a(RTCP.o): In function RTCPMemberDatabase::reapOldMembers(unsigned int)':
RTCP.cpp:(.text+0xd2c): undefined reference to HashTable::Iterator::create(HashTable const&)' /usr/local/lib/libliveMedia.a(RTCP.o): In function RTCPInstance::RTCPInstance(UsageEnvironment&, Groupsock*, unsigned int, unsigned char const*, RTPSink*, RTPSource*, unsigned char)':
RTCP.cpp:(.text+0x1610): undefined reference to Groupsock::multicastSendOnly()' RTCP.cpp:(.text+0x1668): undefined reference to HashTable::create(int)'
/usr/local/lib/libUsageEnvironment.a(HashTable.o): In function HashTable::RemoveNext()': HashTable.cpp:(.text+0x68): undefined reference to HashTable::Iterator::create(HashTable const&)'
/usr/local/lib/libUsageEnvironment.a(HashTable.o): In function HashTable::getFirst()': HashTable.cpp:(.text+0xfc): undefined reference to HashTable::Iterator::create(HashTable const&)'
collect2: error: ld returned 1 exit status
CMakeFiles/RTSPTest.dir/build.make:179: recipe for target 'RTSPTest' failed
make[2]: *** [RTSPTest] Error 1
CMakeFiles/Makefile2:82: recipe for target 'CMakeFiles/RTSPTest.dir/all' failed
make[1]: *** [CMakeFiles/RTSPTest.dir/all] Error 2
Makefile:90: recipe for target 'all' failed
make: *** [all] Error 2
`
Can you help me resolve this problem?