Ticket #7 (new defect report)
DSS 6.0.3 does not build clean on Solaris 10 x86
| Reported by: | stefanparvu14@… | Owned by: | |
|---|---|---|---|
| Priority: | critical | Version: | Solaris |
| Keywords: | solaris x86, 64 | Cc: |
Description
Hey,
I would like to submit a bug report about DSS 6.0.3 and Solaris 10 x86. Couple of defects are found which makes difficult to get compiled DSS on Solaris:
1. PlatformHeader.h does not know about Solaris x86.
"./../PlatformHeader.h:176:4: #error NEED BIGENDIAN DEFINITION 0 OR 1 FOR PLATFORM *** Error code 1"
sparvu@earth>./Buildit grep: illegal option -- o Usage: grep -hblcnsviw pattern file . . . Darwin Streaming Server
Configuring for the SunOS i86pc platform Building for SunOS.i86pc with g++ Building CommonUtilitiesLib for SunOS.i86pc with g++ gcc -c -o base64.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode base64.c In file included from <command line>:4: ./../PlatformHeader.h:176:4: #error NEED BIGENDIAN DEFINITION 0 OR 1 FOR PLATFORM *** Error code 1 make: Fatal error: Command failed for target `base64.o' Building QTFileLib internal for SunOS.i86pc with g++ g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom.cpp In file included from <command line>:5: ./../PlatformHeader.h:176:4: #error NEED BIGENDIAN DEFINITION 0 OR 1 FOR PLATFORM *** Error code 1
Suggested fix:
#elif solaris
#ifdef sparc
#define BIGENDIAN 1
#endif #ifdef _M_IX86
#define BIGENDIAN 0
#endif #ifdef i386
#define BIGENDIAN 0
#endif #ifdef amd64
#define BIGENDIAN 0
#endif #ifdef _M_ALPHA
#define BIGENDIAN 0
#endif #ifndef BIGENDIAN
#error NEED BIGENDIAN DEFINITION 0 OR 1 FOR PLATFORM
#endif
2. GNU grep issue Buildit uses a GNU grep format, which ends with errors in Solaris 10 x86:
sparvu@earth>./Buildit amd64 grep: illegal option -- o Usage: grep -hblcnsviw pattern file . . . Darwin Streaming Server
Configuring for the SunOS i86pc platform
Suggested fix:
#!/bin/sh
VERSION=grep kVersion revision.h | grep -o [:0123456789:].*[:0123456789:]
Should be: VERSION=grep '^#define kVersion' revision.h | awk -F\" '{print $2}'
for instance. Test this on MacOSX and Linux before submitting.
3. Not a clean compile:
Building CommonUtilitiesLib for SunOS.i86pc with g++ gcc -c -o base64.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode base64.c gcc -c -o GetWord.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode GetWord.c gcc -c -o Trim.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode Trim.c gcc -c -o md5.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode md5.c g++ -c -o atomic.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode atomic.cpp g++ -c -o ConfParser.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode ConfParser.cpp g++ -c -o DateTranslator.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode DateTranslator.cpp g++ -c -o EventContext.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O2 -I. -I.. -I../APIStubLib -I../RTPMetaInfoLib -I../APICommonCode EventContext.cpp In file included from EventContext.h:42,
from EventContext.cpp:34:
OSRef.h: In member function `UInt32 OSRefTable::GetNumRefsInTable()': OSRef.h:230: error: `kUInt32_Max' undeclared (first use this function) OSRef.h:230: error: (Each undeclared identifier is reported only once for each function it appears in.) *** Error code 1
In file included from EventContext.h:42,
from EventContext.cpp:34:
OSRef.h: In member function `UInt32 OSRefTable::GetNumRefsInTable()': OSRef.h:230: error: `kUInt32_Max' undeclared (first use this function) OSRef.h:230: error: (Each undeclared identifier is reported only once for each function it appears in.) *** Error code 1 make: Fatal error: Command failed for target `EventContext.o' Building QTFileLib internal for SunOS.i86pc with g++ g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_dref.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_dref.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_elst.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_elst.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_hinf.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_hinf.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_mdhd.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_mdhd.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_mvhd.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_mvhd.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_stco.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_stco.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_stsc.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_stsc.cpp g++ -DDSS_USE_API_CALLBACKS -c -o QTAtom_stsd.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I../RTPMetaInfoLib -I../OSMemoryLib -I../APIStubLib -I../CommonUtilitiesLib QTAtom_stsd.cpp QTAtom_stsd.cpp: In member function `virtual Bool16 QTAtom_stsd::Initialize()': QTAtom_stsd.cpp:118: error: `kSInt32_Max' undeclared (first use this function) QTAtom_stsd.cpp:118: error: (Each undeclared identifier is reported only once for each function it appears in.) *** Error code 1 make: Fatal error: Command failed for target `QTAtom_stsd.o' Building StreamingServer for SunOS.i86pc with g++
Building StreamingServer for SunOS.i86pc with g++ gcc -c -o CommonUtilitiesLib/daemon.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -DDSS_USE_API_CALLBACKS -g -Wall -Wno-format-y2k -include PlatformHeader.h -O3 -I. -IQTFileLib -IOSMemoryLib -IRTSPClientLib -IAPIModules -IAPICommonCode -IAPIModules/OSMemory_Modules -IAPIModules/QTSSAccessLogModule -IAPIModules/QTSSFileModule -IAPIModules/QTSSFlowControlModule -IAPIModules/QTSSReflectorModule -IAPIModules/QTSSSvrControlModule -IAPIModules/QTSSWebDebugModule -IAPIModules/QTSSWebStatsModule -IAPIModules/QTSSAuthorizeModule -IAPIModules/QTSSPOSIXFileSysModule -IAPIModules/QTSSAdminModule -IAPIModules/QTSSMP3StreamingModule -IAPIModules/QTSSRTPFileModule -IAPIModules/QTSSAccessModule -IAPIModules/QTSSHttpFileModule -IQTFileTools/RTPFileGen.tproj -IAPIStubLib -ICommonUtilitiesLib -IRTCPUtilitiesLib -IHTTPUtilitiesLib -IRTPMetaInfoLib -IPrefsSourceLib -IServer.tproj CommonUtilitiesLib/daemon.c g++ -c -o Server.tproj/QTSSExpirationDate.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -DDSS_USE_API_CALLBACKS -g -Wall -Wno-format-y2k -include PlatformHeader.h -O3 -I. -IQTFileLib -IOSMemoryLib -IRTSPClientLib -IAPIModules -IAPICommonCode -IAPIModules/OSMemory_Modules -IAPIModules/QTSSAccessLogModule -IAPIModules/QTSSFileModule -IAPIModules/QTSSFlowControlModule -IAPIModules/QTSSReflectorModule -IAPIModules/QTSSSvrControlModule -IAPIModules/QTSSWebDebugModule -IAPIModules/QTSSWebStatsModule -IAPIModules/QTSSAuthorizeModule -IAPIModules/QTSSPOSIXFileSysModule -IAPIModules/QTSSAdminModule -IAPIModules/QTSSMP3StreamingModule -IAPIModules/QTSSRTPFileModule -IAPIModules/QTSSAccessModule -IAPIModules/QTSSHttpFileModule -IQTFileTools/RTPFileGen.tproj -IAPIStubLib -ICommonUtilitiesLib -IRTCPUtilitiesLib -IHTTPUtilitiesLib -IRTPMetaInfoLib -IPrefsSourceLib -IServer.tproj Server.tproj/QTSSExpirationDate.cpp g++ -c -o Server.tproj/QTSSCallbacks.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -DDSS_USE_API_CALLBACKS -g -Wall -Wno-format-y2k -include PlatformHeader.h -O3 -I. -IQTFileLib -IOSMemoryLib -IRTSPClientLib -IAPIModules -IAPICommonCode -IAPIModules/OSMemory_Modules -IAPIModules/QTSSAccessLogModule -IAPIModules/QTSSFileModule -IAPIModules/QTSSFlowControlModule -IAPIModules/QTSSReflectorModule -IAPIModules/QTSSSvrControlModule -IAPIModules/QTSSWebDebugModule -IAPIModules/QTSSWebStatsModule -IAPIModules/QTSSAuthorizeModule -IAPIModules/QTSSPOSIXFileSysModule -IAPIModules/QTSSAdminModule -IAPIModules/QTSSMP3StreamingModule -IAPIModules/QTSSRTPFileModule -IAPIModules/QTSSAccessModule -IAPIModules/QTSSHttpFileModule -IQTFileTools/RTPFileGen.tproj -IAPIStubLib -ICommonUtilitiesLib -IRTCPUtilitiesLib -IHTTPUtilitiesLib -IRTPMetaInfoLib -IPrefsSourceLib -IServer.tproj Server.tproj/QTSSCallbacks.cpp In file included from CommonUtilitiesLib/EventContext.h:42,
from CommonUtilitiesLib/Socket.h:43, from CommonUtilitiesLib/TCPSocket.h:46, from Server.tproj/RTSPRequestStream.h:42, from Server.tproj/RTSPSessionInterface.h:37, from Server.tproj/RTSPRequestInterface.h:45, from Server.tproj/QTSSCallbacks.cpp:37:
CommonUtilitiesLib/OSRef.h: In member function `UInt32 OSRefTable::GetNumRefsInTable()': CommonUtilitiesLib/OSRef.h:230: error: `kUInt32_Max' undeclared (first use this function) CommonUtilitiesLib/OSRef.h:230: error: (Each undeclared identifier is reported only once for each function it appears in.) In file included from Server.tproj/RTPStream3gpp.h:37,
from Server.tproj/RTPStream.h:56, from Server.tproj/RTPSession.h:50, from Server.tproj/QTSSCallbacks.cpp:38:
RTCPUtilitiesLib/RTCPAPPNADUPacket.h: In destructor `NaduList::~NaduList()': RTCPUtilitiesLib/RTCPAPPNADUPacket.h:205: warning: comparison between signed and unsigned integer expressions In file included from Server.tproj/RTPSession.h:50,
from Server.tproj/QTSSCallbacks.cpp:38:
Server.tproj/RTPStream.h:60:29: RTSPRequest3gpp.h: No such file or directory *** Error code 1 make: Fatal error: Command failed for target `Server.tproj/QTSSCallbacks.o' Building RefMovieModule for SunOS.i86pc with g++
Building QTRTPFileTest for SunOS.i86pc with g++ g++ -c -o QTRTPFileTest.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../../PlatformHeader.h -g -Wall -O3 -I. -I../../QTFileLib -I../../CommonUtilitiesLib -I../../RTPMetaInfoLib QTRTPFileTest.cpp make: Fatal error: Don't know how to make target `../../QTFileLib/libQTFileExternalLib.a' Building QTRTPGen for SunOS.i86pc with g++ g++ -c -o QTRTPGen.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../../PlatformHeader.h -g -Wall -O3 -I. -I../../QTFileLib -I../../CommonUtilitiesLib -I../../RTPMetaInfoLib QTRTPGen.cpp make: Fatal error: Don't know how to make target `../../QTFileLib/libQTFileExternalLib.a' Building QTSDPGen for SunOS.i86pc with g++ g++ -c -o QTSDPGen.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../../PlatformHeader.h -g -Wall -O3 -I. -I../../QTFileLib -I../../CommonUtilitiesLib -I../../RTPMetaInfoLib QTSDPGen.cpp make: Fatal error: Don't know how to make target `../../QTFileLib/libQTFileExternalLib.a' Building QTSampleLister for SunOS.i86pc with g++ g++ -c -o QTSampleLister.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../../PlatformHeader.h -g -Wall -O3 -I. -I../../QTFileLib -I../../CommonUtilitiesLib -I../../RTPMetaInfoLib QTSampleLister.cpp make: Fatal error: Don't know how to make target `../../QTFileLib/libQTFileExternalLib.a' Building QTTrackInfo for SunOS.i86pc with g++ g++ -c -o QTTrackInfo.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../../PlatformHeader.h -g -Wall -O3 -I. -I../../QTFileLib -I../../CommonUtilitiesLib -I../../RTPMetaInfoLib QTTrackInfo.cpp make: Fatal error: Don't know how to make target `../../QTFileLib/libQTFileExternalLib.a' Building StreamingLoadTool for SunOS.i86pc with g++ g++ -c -o StreamingLoadTool.o -Dsolaris -D_REENTRANT -DFD_SETSIZE=65536 -L/usr/local/lib -R/usr/local/lib -include ../PlatformHeader.h -g -Wall -O3 -I. -I.. -I../OSMemoryLib -I../RTSPClientLib -I../APICommonCode -I../CommonUtilitiesLib -I../PrefsSourceLib -I../APIStubLib -I../RTPMetaInfoLib StreamingLoadTool.cpp In file included from ../CommonUtilitiesLib/EventContext.h:42,
from ../CommonUtilitiesLib/Socket.h:43, from ../CommonUtilitiesLib/TCPSocket.h:46, from ../RTSPClientLib/RTSPClient.h:39, from ../RTSPClientLib/ClientSession.h:38, from StreamingLoadTool.cpp:51:
../CommonUtilitiesLib/OSRef.h: In member function `UInt32 OSRefTable::GetNumRefsInTable()': ../CommonUtilitiesLib/OSRef.h:230: error: `kUInt32_Max' undeclared (first use this function) ../CommonUtilitiesLib/OSRef.h:230: error: (Each undeclared identifier is reported only once for each function it appears in.) In file included from ../RTSPClientLib/ClientSession.h:38,
from StreamingLoadTool.cpp:51:
../RTSPClientLib/RTSPClient.h: At global scope: ../RTSPClientLib/RTSPClient.h:253: error: `kUInt32_Max' was not declared in this scope ../RTSPClientLib/RTSPClient.h:357: error: `kUInt32_Max' was not declared in this scope ../RTSPClientLib/RTSPClient.h:403: error: `kUInt32_Max' was not declared in this scope In file included from ../RTSPClientLib/ClientSession.h:42,
from StreamingLoadTool.cpp:51:
../RTSPClientLib/PlayerSimulator.h:34:24: warning: extra tokens at end of #include directive In file included from ../RTSPClientLib/ClientSession.h:42,
from StreamingLoadTool.cpp:51:
../RTSPClientLib/PlayerSimulator.h: In member function `void PlayerSimulator::SetupTrack(UInt32, UInt32, UInt32)': ../RTSPClientLib/PlayerSimulator.h:68: error: `kUInt32_Max' undeclared (first use this function) ../RTSPClientLib/PlayerSimulator.h: In member function `UInt32 PlayerSimulator::GetNextSeqNumToDecode(UInt32)': ../RTSPClientLib/PlayerSimulator.h:214: error: `kUInt32_Max' undeclared (first use this function) ../RTSPClientLib/PlayerSimulator.h: In member function `UInt32 PlayerSimulator::GetPlayoutDelay(UInt32)': ../RTSPClientLib/PlayerSimulator.h:222: error: `kUInt32_Max' undeclared (first use this function) ../RTSPClientLib/PlayerSimulator.h: In member function `UInt32 PlayerSimulator::GetBufferingDelay(UInt32)': ../RTSPClientLib/PlayerSimulator.h:235: error: `kUInt32_Max' undeclared (first use this function) ../RTSPClientLib/PlayerSimulator.h: In member function `UInt32 PlayerSimulator::LocalTime2MediaTime(SInt64)': ../RTSPClientLib/PlayerSimulator.h:341: error: `kUInt32_Max' undeclared (first use this function) In file included from StreamingLoadTool.cpp:51: ../RTSPClientLib/ClientSession.h: In member function `UInt32 ClientSession::TrackID2TrackIndex(UInt32)': ../RTSPClientLib/ClientSession.h:186: error: `kUInt32_Max' undeclared (first use this function) ../RTSPClientLib/ClientSession.h: In constructor `ClientSession::TrackStats::TrackStats()': ../RTSPClientLib/ClientSession.h:270: error: `kUInt32_Max' undeclared (first use this function) StreamingLoadTool.cpp: In function `int main(int, char**)': StreamingLoadTool.cpp:709: error: `kUInt32_Max' undeclared (first use this function) *** Error code 1 make: Fatal error: Command failed for target `StreamingLoadTool.o'


