2009. 5. 24. 10:22

리눅스(fedora) 주문형 스트리밍 서버 구성기 - Darwin Streaming Server


VLC서버를 이리저리 2시간 동안 둘러보고 구글링 검색을 해봐도... 주문형 VOD서버를 구성할수 없었다. 여기서 접고, 애플의 Darwin Streaming Server라는 걸죽한 프로그램을 한번 설치해보기로 했다.

 

Welcome to Darwin Streaming Server, the open source version of Apple's QuickTime Streaming Server technology that allows you to send streaming media to clients across the Internet using the industry standard RTP and RTSP protocols. Based on the same code base as QuickTime Streaming Server, Darwin Streaming Server provides a high level of customizability and runs on a variety of platforms allowing you to manipulate the code to fit your needs.

Who should use Darwin Streaming Server?

While sharing the same code base as QuickTime Streaming Server, Darwin Streaming Server is an open source project intended for developers who need to stream QuickTime and MPEG-4 media on alternative platforms such as Windows, Linux, and Solaris, or those developers who need to extend and/or modify the existing streaming server code to fit their needs. Darwin Streaming Server is only supported by the open source community and is not eligible for technical support from Apple. Apple hosts a number of email discussion lists for Darwin Streaming Server users and developers to share ideas and discuss deployment scenarios.

QuickTime Streaming Server (QTSS) is Apple's commercial streaming server delivered as part of Mac OS X Server. QTSS provides users with enhanced administration and media management tools as a result of the tight integration with Mac OS X Server; these tools are not available as part of the open source project. Technical support is available for QTSS as part of the AppleCare support plans provided for Mac OS X Server and Xserve.

Both DSS and QTSS are built on a core server that provides state of the art quality of service features with Skip protection and Instant-On, and support for the latest digital media standards, MPEG-4 and 3GPP.

Darwin Streaming Server is available as a free download under the Apple Public Source License.

DSS on Mac OS forge

Darwin Streaming Server has been moved to Mac OS forge.org. Please visit this site for the latest information on DSS including source code downloads and documentation.


문제는 클라이언트 컴퓨터에서 Windows Media player가 아니라 QuickTime 을 써야 한다는것이다. 솔직히 QuickTime이 WMP과 비교하여 질적으로 떨어진다는것은 아니다. 하지만, IE에서의 접근성과 ActiveX의 지원등을 면밀히 지켜봐야 한다. 어찌해야 할까..아무래도 MS의 지배하에 있는 현 PC시장에서 QuickTime을 선택한다는것은 좌충수가 될수 있다. 어쨋건 함 설치해보고, 논해보기로 한다.

Apple DSS 메인 페이지 : http://dss.macosforge.org/

#wget http://dss.macosforge.org/downloads/DarwinStreamingSrvr6.0.3-Source.tar
#tar -xvf DarwinStreamingSrvr6.0.3-Source.tar
#./Buildit Install
컴파일을 해야한다. 하지만 컴파일이 안된다. g++등 DSS가 요구하는 모든 개발툴들을 다시설치하고 업데이트 하였다.

[root@japasop DarwinStreamingSrvr6.0.3-Source]# ls
APICommonCode         dss_license_tool.pl        PrefsSourceLib            sample_300kbit.mov
APIModules            DSS_MakeProxyRoot          pubPackageMetaData        sample_300kbit.mp4
APIStubLib            DSS_MakeRoot               qtaccess                  sample_50kbit.3gp
APPLE_LICENSE         dssPackageMetaData         QTFileLib                 sample_h264_100kbit.mp4
AtomicLib             gdbdar                     QTFileTools               sample_h264_1mbit.mp4
broadcasterctl        gdbmp3                     qtgroups                  sample_h264_300kbit.mp4
Buildit               gdbplay                    qtpasswd.tproj            sample.mp3
BuildOSXInstallerPkg  gdb_script                 qtssPackageMetaData       Server.tproj
buildproxytarballx    gdbserver                  qtusers                   StreamingLoadTool
buildtarball          HTTPUtilitiesLib           RegistrySystemPathEditor  StreamingProxy.tproj
clean                 Install                    relayconfig.xml-Sample    StreamingServer.xcodeproj
clean_dss_osx         Jamfile                    ReleaseNotes.txt          streamingserver.xml
CommonUtilitiesLib    jamplay                    revision.h                streamingserver.xml-POSIX
defaultPaths.h        Makefile.POSIX             RTCPUtilitiesLib          uninstalldss4
deleteCVSdirs         MP3Broadcaster             RTPMetaInfoLib            uninstallqtss4
deleteSVNdirs         OSMemoryLib                RTSPClientLib             UpdateDSSInstallerDocs
deleteWinBuildDirs    parseServerOut.py          SafeStdLib                WebAdmin
dobuildit             PlatformHeader.h           sample_100kbit.mov        WinNTSupport
Documentation         PlaylistBroadcaster.tproj  sample_100kbit.mp4

[root@japasop DarwinStreamingSrvr6.0.3-Source]# ./Install (대문자 I임을 주의)

Installing Darwin Streaming Server

Checking for and Killing currently running Darwin Streaming Server
Removing previous versions of Darwin Streaming Server

Backing up previous config files

Inserting path to perl into scripts..
Can't open perl script "perlpath.pl": No such file or directory

Creating unprivileged user to run the server = "qtss".
copying DarwinStreamingServer to /usr/local/sbin/DarwinStreamingServer
cp: cannot stat `DarwinStreamingServer': No such file or directory
copying PlaylistBroadcaster to /usr/local/bin/PlaylistBroadcaster
cp: cannot stat `PlaylistBroadcaster': No such file or directory
copying MP3Broadcaster to /usr/local/bin/MP3Broadcaster
cp: omitting directory `MP3Broadcaster'
copying qtpasswd to /usr/local/bin/qtpasswd
cp: cannot stat `qtpasswd': No such file or directory
creating /usr/local/sbin/StreamingServerModules directory
cp: cannot stat `StreamingServerModules/*': No such file or directory
creating /etc/streaming directory
./Install: line 243: /usr/local/sbin/DarwinStreamingServer: No such file or directory
chmod: cannot access `/etc/streaming/streamingserver.xml': No such file or directory
chown: invalid user: `qtss'

copying relayconfig.xml-Sample to /etc/streaming/relayconfig.xml-Sample

copying qtusers to /etc/streaming/qtusers
chown: invalid user: `qtss'

copying qtgroups to /etc/streaming/qtgroups
chown: invalid user: `qtss'
creating /var/streaming directory
copying readme.txt to /var/streaming/readme.txt
cp: cannot stat `readme.txt': No such file or directory
copying 3rdPartyAcknowledgements.rtf to /var/streaming/3rdPartyAcknowledgements.rtf
cp: cannot stat `3rdPartyAcknowledgements.rtf': No such file or directory
creating /var/streaming/logs directory
creating /usr/local/movies directory
creating /var/streaming/playlists directory
copying sample_100kbit.mov into /usr/local/movies/sample_100kbit.mov
copying sample_300kbit.mov into /usr/local/movies/sample_300kbit.mov
copying sample_100kbit.mp4 into /usr/local/movies/sample_100kbit.mp4
copying sample_300kbit.mp4 into /usr/local/movies/sample_300kbit.mp4
copying sample.mp3 into /usr/local/movies/sample.mp3
copying sample_50kbit.3gp into /usr/local/movies/sample_50kbit.3gp
copying sample_h264_100kbit.mp4 into /usr/local/movies/sample_h264_100kbit.mp4
copying sample_h264_300kbit.mp4 into /usr/local/movies/sample_h264_300kbit.mp4
copying sample_h264_1mbit.mp4 into /usr/local/movies/sample_h264_1mbit.mp4
copying StreamingLoadTool to /usr/local/bin/StreamingLoadTool
cp: omitting directory `StreamingLoadTool'
copying streamingloadtool.conf to /etc/streaming/streamingloadtool.conf
cp: cannot stat `streamingloadtool.conf': No such file or directory
copying streamingadminserver.pl into /usr/local/sbin/streamingadminserver.pl
cp: cannot stat `streamingadminserver.pl': No such file or directory
copying Admin HTML to /var/streaming/AdminHtml directory
cp: cannot stat `AdminHtml': No such file or directory
chown: invalid user: `qtss'
chown: invalid user: `qtss'
chown: invalid user: `qtss'

Launching streamingadminserver.pl
./Install: line 355: /usr/local/sbin/streamingadminserver.pl: No such file or directory

Installation Complete

Darwin Streaming Server Setup

In order to administer the Darwin Streaming Server you must create an administrator user [Note: The administrator user name cannot contain spaces, or single or double quote characters, and cannot be more than 255 characters long].
Please enter a new administrator user name: bestakas


You must also enter a password for the administrator user [Note: The administrator password cannot contain spaces, or quotes, either single or double, and cannot be more than 80 characters long].
Please enter a new administrator Password:
Re-enter the new administrator password:

./Install: line 408: /usr/local/bin/qtpasswd: No such file or directory
./Install: line 416: /usr/local/bin/qtpasswd: No such file or directory
chown: invalid user: `qtss'
Setup Complete!
[root@japasop DarwinStreamingSrvr6.0.3-Source]#


관리자용 계정과 비밀번호를 물어본다.
chown: invalid user: `qtss'
이 부분이 좀 걸려서, 구글링을 해봤더니 설치 실패.. 설치시에 이런 경우가 매우 다분히 많이 일어나는듯 Apple DSS포럼에는 이 문제에 대해서 많은 글들이 올라와있었다. FC10,FC9,FC6,FC2모두 동일한 에러메세지가 나왔다. 커널과 라이브러리에 문제인것은 아닌것 같은데...(적색부분이 모두 에러메세지)

첫번째 에러메세지인 Can't open perl script "perlpath.pl": No such file or directory 부터 해결을 해보기로 했다.
<이쯤 되면 지친다.. 이넘의 스트리밍 서버... >

아무리 알아봐도 도대체 해결법이 안나온다...각종 라이브러리들과 개발용 툴.. 그리고 애플사의 답변들대로 다 해봤지만.. 매번  같은 메세지일뿐 단순히 ./buildit Install 하고 ./Install 하라.. 슬며시 짜증이 나기 시작했다.. 세계의 DSS를 쓰고자 이와같은 이유로 포럼에 온 사람들도 절망적이라는 단어를 써대고 있었다..
 
결국은 Ubuntu로 시스템을 변경하고 설치해봤다.

 root@kubuntu:~# sudo apt-get install libc6-dev linux-libc-dev gcc-3.3 g++-3.3
袁몃윭誘?紐⑸줉???쎈뒗 以묒엯?덈떎... ?꾨즺
?섏〈???몃━瑜?留뚮뱶??以묒엯?덈떎
?곹깭 ?뺣낫瑜??쎈뒗 以묒엯?덈떎... ?꾨즺
?ㅼ쓬 袁몃윭誘몃? ???ㅼ튂??寃껋엯?덈떎:
  cpp-3.3 gcc-3.3-base libc6 libc6-i686 libstdc++5 libstdc++5-3.3-dev
?쒖븞?섎뒗 袁몃윭誘?
  gcc-3.3-doc glibc-doc manpages-dev libstdc++5-3.3-doc
?ㅼ쓬 ??袁몃윭誘몃? ?ㅼ튂??寃껋엯?덈떎:
  cpp-3.3 g++-3.3 gcc-3.3 gcc-3.3-base libc6-dev libstdc++5 libstdc++5-3.3-dev linux-libc-dev
?ㅼ쓬 袁몃윭誘몃? ?낃렇?덉씠?쒗븷 寃껋엯?덈떎:
  libc6 libc6-i686
2媛??낃렇?덉씠?? 8媛??덈줈 ?ㅼ튂, 0媛?吏€?곌린 諛?330媛??낃렇?덉씠??????
15.5M諛붿씠???꾩뭅?대툕瑜?諛쏆븘???⑸땲??
After this operation, 34.4MB of additional disk space will be used.
怨꾩냽 ?섏떆寃좎뒿?덇퉴 [Y/n]? y
諛쏄린:1
http://kr.archive.ubuntu.com hardy-updates/main libc6 2.7-10ubuntu4 [4307kB]
諛쏄린:2
http://kr.archive.ubuntu.com hardy-updates/main libc6-i686 2.7-10ubuntu4 [1243kB]
諛쏄린:3
http://kr.archive.ubuntu.com hardy-updates/universe gcc-3.3-base 1:3.3.6-15ubuntu6 [151kB]
諛쏄린:4
http://kr.archive.ubuntu.com hardy-updates/universe cpp-3.3 1:3.3.6-15ubuntu6 [1385kB]
諛쏄린:5
http://kr.archive.ubuntu.com hardy-updates/universe gcc-3.3 1:3.3.6-15ubuntu6 [1554kB]
諛쏄린:6
http://kr.archive.ubuntu.com hardy-updates/main linux-libc-dev 2.6.24-24.53 [705kB]
諛쏄린:7
http://kr.archive.ubuntu.com hardy-updates/main libc6-dev 2.7-10ubuntu4 [3344kB]
諛쏄린:8
http://kr.archive.ubuntu.com hardy-updates/universe libstdc++5 1:3.3.6-15ubuntu6 [296kB]
諛쏄린:9
http://kr.archive.ubuntu.com hardy-updates/universe libstdc++5-3.3-dev 1:3.3.6-15ubuntu6 [775kB]
諛쏄린:10
http://kr.archive.ubuntu.com hardy-updates/universe g++-3.3 1:3.3.6-15ubuntu6 [1771kB]
?대젮諛쏄린 15.5M諛붿씠?? ?뚯슂?쒓컙 21s (735k諛붿씠??珥?
袁몃윭誘몃뱾??誘몃━ ?ㅼ젙?섎뒗 以묒엯?덈떎...
(?곗씠?곕쿋?댁뒪 ?쎈뒗以?...?꾩옱 91210媛쒖쓽 ?뚯씪怨??붾젆?좊━媛€ ?ㅼ튂?섏뼱 ?덉뒿?덈떎.)
libc6 2.7-10ubuntu3 袁몃윭誘몃? ?€泥댄븷 以€鍮꾪븯??以묒엯?덈떎 (.../libc6_2.7-10ubuntu4_i386.deb ?ъ슜) ...
?€泥대릺??libc6 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 ...
libc6 (2.7-10ubuntu4) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place
(?곗씠?곕쿋?댁뒪 ?쎈뒗以?...?꾩옱 91210媛쒖쓽 ?뚯씪怨??붾젆?좊━媛€ ?ㅼ튂?섏뼱 ?덉뒿?덈떎.)
libc6-i686 2.7-10ubuntu3 袁몃윭誘몃? ?€泥댄븷 以€鍮꾪븯??以묒엯?덈떎 (.../libc6-i686_2.7-10ubuntu4_i386.deb ?ъ슜) ...
?€泥대릺??libc6-i686 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 ...
?꾩뿉 ?좏깮?섏? ?딆? gcc-3.3-base 袁몃윭誘몃? ?좏깮?⑸땲??
gcc-3.3-base 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../gcc-3.3-base_1%3a3.3.6-15ubuntu6_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? cpp-3.3 袁몃윭誘몃? ?좏깮?⑸땲??
cpp-3.3 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../cpp-3.3_1%3a3.3.6-15ubuntu6_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? gcc-3.3 袁몃윭誘몃? ?좏깮?⑸땲??
gcc-3.3 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../gcc-3.3_1%3a3.3.6-15ubuntu6_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? linux-libc-dev 袁몃윭誘몃? ?좏깮?⑸땲??
linux-libc-dev 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../linux-libc-dev_2.6.24-24.53_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? libc6-dev 袁몃윭誘몃? ?좏깮?⑸땲??
libc6-dev 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../libc6-dev_2.7-10ubuntu4_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? libstdc++5 袁몃윭誘몃? ?좏깮?⑸땲??
libstdc++5 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../libstdc++5_1%3a3.3.6-15ubuntu6_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? libstdc++5-3.3-dev 袁몃윭誘몃? ?좏깮?⑸땲??
libstdc++5-3.3-dev 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../libstdc++5-3.3-dev_1%3a3.3.6-15ubuntu6_i386.deb?먯꽌) ...
?꾩뿉 ?좏깮?섏? ?딆? g++-3.3 袁몃윭誘몃? ?좏깮?⑸땲??
g++-3.3 袁몃윭誘몃? ?몃뒗 以묒엯?덈떎 (.../g++-3.3_1%3a3.3.6-15ubuntu6_i386.deb?먯꽌) ...
libc6-i686 (2.7-10ubuntu4) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...

gcc-3.3-base (1:3.3.6-15ubuntu6) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
cpp-3.3 (1:3.3.6-15ubuntu6) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
gcc-3.3 (1:3.3.6-15ubuntu6) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
linux-libc-dev (2.6.24-24.53) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
libc6-dev (2.7-10ubuntu4) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
libstdc++5 (1:3.3.6-15ubuntu6) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...

libstdc++5-3.3-dev (1:3.3.6-15ubuntu6) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
g++-3.3 (1:3.3.6-15ubuntu6) ?ㅼ젙?섎뒗 以묒엯?덈떎 ...
Processing triggers for libc6 ...
ldconfig deferred processing now taking place
root@kubuntu:~# ldconfig


<한글 우분투이기 때문에 putty에서 별다른 설정없이 쓸때는 문자가 깨져나온다.>

           => `DarwinStreamingSrvr5.5.5-Source.tar.gz'
Resolving dss.macosforge.org... 17.254.17.248
?묒냽 dss.macosforge.org|17.254.17.248|:80... ?묒냽??
HTTP request sent, awaiting response... 302 Found
           => `DarwinStreamingSrvr5.5.5-Source.tar.gz'
Resolving static.macosforge.org... 17.254.17.246
?묒냽 static.macosforge.org|17.254.17.246|:80... ?묒냽??
HTTP request sent, awaiting response... 200 OK
Length: 21,468,268 (20M) [application/x-gzip]

100%[==============================================================================>] 21,468,268   376.54K/s    ETA 00:00

18:38:02 (355.73 KB/s) - `DarwinStreamingSrvr5.5.5-Source.tar.gz' saved [21468268/21468268]

root@kubuntu:~# tar xzf DarwinStreamingSrvr5.5.5-Source.tar.gz DarwinStreamingSrvr5.5.5-Source
root@kubuntu:~# cd DarwinStreamingSrvr5.5.5-Source/
root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source# sudo adduser -system -no-create-home -ingroup qtss qtss
Adding system user `qtss' (UID 111) ...
Adding new user `qtss' (UID 111) with group `qtss' ...
Not creating home directory `/home/qtss'. 

 

root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source# sudo apt-get install g++
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  cpp cpp-4.2 g++-4.2 gcc gcc-4.2 gcc-4.2-base libffi4 libgcc1 libgomp1 libstdc++6 libstdc++6-4.2-dev
Suggested packages:
  cpp-doc gcc-4.2-locales g++-multilib g++-4.2-multilib gcc-4.2-doc libstdc++6-4.2-dbg autoconf automake1.9 bison flex
  gcc-doc gcc-multilib libtool manpages-dev gcc-4.2-multilib libgcc1-dbg libgomp1-dbg libmudflap0-4.2-dev
  libmudflap0-dbg libstdc++6-4.2-doc
The following NEW packages will be installed:
  g++ g++-4.2 libstdc++6-4.2-dev
The following packages will be upgraded:
  cpp cpp-4.2 gcc gcc-4.2 gcc-4.2-base libffi4 libgcc1 libgomp1 libstdc++6
9 upgraded, 3 newly installed, 0 to remove and 321 not upgraded.
Need to get 7575kB of archives.
After this operation, 15.0MB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://kr.archive.ubuntu.com hardy-updates/main gcc-4.2-base 4.2.4-1ubuntu3 [100kB]
Get:2 http://kr.archive.ubuntu.com hardy-updates/main libstdc++6 4.2.4-1ubuntu3 [332kB]
Get:3 http://kr.archive.ubuntu.com hardy-updates/main libgomp1 4.2.4-1ubuntu3 [12.0kB]
Get:4 http://kr.archive.ubuntu.com hardy-updates/main libffi4 4.2.4-1ubuntu3 [13.0kB]
Get:5 http://kr.archive.ubuntu.com hardy-updates/main cpp-4.2 4.2.4-1ubuntu3 [2486kB]
Get:6 http://kr.archive.ubuntu.com hardy-updates/main gcc-4.2 4.2.4-1ubuntu3 [596kB]
Get:7 http://kr.archive.ubuntu.com hardy-updates/main libgcc1 1:4.2.4-1ubuntu3 [23.3kB]
Get:8 http://kr.archive.ubuntu.com hardy-updates/main cpp 4:4.2.3-1ubuntu6 [34.6kB]
Get:9 http://kr.archive.ubuntu.com hardy-updates/main libstdc++6-4.2-dev 4.2.4-1ubuntu3 [1187kB]
Get:10 http://kr.archive.ubuntu.com hardy-updates/main g++-4.2 4.2.4-1ubuntu3 [2784kB]
Get:11 http://kr.archive.ubuntu.com hardy-updates/main gcc 4:4.2.3-1ubuntu6 [5096B]
Get:12 http://kr.archive.ubuntu.com hardy-updates/main g++ 4:4.2.3-1ubuntu6 [1440B]
Fetched 7575kB in 10s (747kB/s)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
(Reading database ... 92578 files and directories currently installed.)
Preparing to replace gcc-4.2-base 4.2.3-2ubuntu7 (using .../gcc-4.2-base_4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement gcc-4.2-base ...
Setting up gcc-4.2-base (4.2.4-1ubuntu3) ...

(Reading database ... 92578 files and directories currently installed.)
Preparing to replace libstdc++6 4.2.3-2ubuntu7 (using .../libstdc++6_4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement libstdc++6 ...
Setting up libstdc++6 (4.2.4-1ubuntu3) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place
(Reading database ... 92578 files and directories currently installed.)
Preparing to replace libgomp1 4.2.3-2ubuntu7 (using .../libgomp1_4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement libgomp1 ...
Preparing to replace libffi4 4.2.3-2ubuntu7 (using .../libffi4_4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement libffi4 ...
Preparing to replace cpp-4.2 4.2.3-2ubuntu7 (using .../cpp-4.2_4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement cpp-4.2 ...
Preparing to replace gcc-4.2 4.2.3-2ubuntu7 (using .../gcc-4.2_4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement gcc-4.2 ...
Preparing to replace libgcc1 1:4.2.3-2ubuntu7 (using .../libgcc1_1%3a4.2.4-1ubuntu3_i386.deb) ...
Unpacking replacement libgcc1 ...
Setting up libgcc1 (1:4.2.4-1ubuntu3) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place
(Reading database ... 92577 files and directories currently installed.)
Preparing to replace cpp 4:4.2.3-1ubuntu3 (using .../cpp_4%3a4.2.3-1ubuntu6_i386.deb) ...
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Unpacking replacement cpp ...
Selecting previously deselected package libstdc++6-4.2-dev.
Unpacking libstdc++6-4.2-dev (from .../libstdc++6-4.2-dev_4.2.4-1ubuntu3_i386.deb) ...
Selecting previously deselected package g++-4.2.
Unpacking g++-4.2 (from .../g++-4.2_4.2.4-1ubuntu3_i386.deb) ...
Preparing to replace gcc 4:4.2.3-1ubuntu3 (using .../gcc_4%3a4.2.3-1ubuntu6_i386.deb) ...
Removing old gcc doc directory.
Unpacking replacement gcc ...
Selecting previously deselected package g++.
Unpacking g++ (from .../g++_4%3a4.2.3-1ubuntu6_i386.deb) ...
Setting up libgomp1 (4.2.4-1ubuntu3) ...

Setting up libffi4 (4.2.4-1ubuntu3) ...

Setting up cpp-4.2 (4.2.4-1ubuntu3) ...
Setting up gcc-4.2 (4.2.4-1ubuntu3) ...
Setting up cpp (4:4.2.3-1ubuntu6) ...
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

Setting up gcc (4:4.2.3-1ubuntu6) ...
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

Setting up libstdc++6-4.2-dev (4.2.4-1ubuntu3) ...
Setting up g++-4.2 (4.2.4-1ubuntu3) ...
Setting up g++ (4:4.2.3-1ubuntu6) ...
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = "c"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").

Processing triggers for libc6 ...
ldconfig deferred processing now taking place
root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source#

Buildit명령으로 컴파일을 시도했지만 g++ 컴파일부분에서 컴파일을 찾을수 없다하여 g++를 다시 설치
root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source#./Buildit install

Installing source build of Darwin Streaming Proxy
creating directory StreamingProxy-5.5.5-Linux
copying StreamingProxy to StreamingProxy-5.5.5-Linux/StreamingProxy
copying streamingproxy.conf to StreamingProxy-5.5.5-Linux/streamingproxy.conf
copying StreamingProxy.html to StreamingProxy-5.5.5-Linux/StreamingProxy.html

Done.
StreamingProxy-5.5.5-Linux/
StreamingProxy-5.5.5-Linux/streamingproxy.conf
StreamingProxy-5.5.5-Linux/StreamingProxy
StreamingProxy-5.5.5-Linux/StreamingProxy.html
Success!
root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source#

드디어 컴파일 성공 메세지..

그전에 해야할일이 있다. perl이 언어상 문제때문에 에러가 생기는 점을 해결해야 한다.
#vi /etc/profile을 열고 중간어디쯤에...
LC_ALL=C;export LC_ALL 
을 추가한다.


root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source# cd DarwinStreamingSrvr5.5.5-Linux/
root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source/DarwinStreamingSrvr5.5.5-Linux# sudo ./Install

Installing Darwin Streaming Server

Checking for and Killing currently running Darwin Streaming Server
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
Removing previous versions of Darwin Streaming Server
removing /usr/local/sbin/DarwinStreamingServer

Backing up previous config files
backing up /etc/streaming/streamingserver.xml to /etc/streaming/streamingserver.xml.backup
backing up /etc/streaming/qtusers to /etc/streaming/qtusers.backup
backing up /etc/streaming/qtgroups to /etc/streaming/qtgroups.backup

Inserting path to perl into scripts..

Creating unprivileged user to run the server = "qtss".
copying DarwinStreamingServer to /usr/local/sbin/DarwinStreamingServer
copying PlaylistBroadcaster to /usr/local/bin/PlaylistBroadcaster
copying MP3Broadcaster to /usr/local/bin/MP3Broadcaster
copying qtpasswd to /usr/local/bin/qtpasswd
copying createuserstreamingdir to /usr/local/bin/createuserstreamingdir
Generating a new prefs file at /etc/streaming/streamingserver.xml
INFO: Module Loaded...QTSSHomeDirectoryModule [dynamic]
INFO: Module Loaded...QTSSRefMovieModule [dynamic]
INFO: Module Loaded...QTSSFileModule [static]
INFO: Module Loaded...QTSSReflectorModule [static]
INFO: Module Loaded...QTSSRelayModule [static]
INFO: Module Loaded...QTSSAccessLogModule [static]
INFO: Module Loaded...QTSSFlowControlModule [static]
INFO: Module Loaded...QTSSPosixFileSysModule [static]
INFO: Module Loaded...QTSSAdminModule [static]
INFO: Module Loaded...QTSSMP3StreamingModule [static]
INFO: Module Loaded...QTSSAccessModule [static]
WARNING: No users file found at /etc/streaming/qtusers.
WARNING: No groups file found at /etc/streaming/qtgroups.

copying relayconfig.xml-Sample to /etc/streaming/relayconfig.xml-Sample

copying qtusers to /etc/streaming/qtusers

copying qtgroups to /etc/streaming/qtgroups
copying readme.txt to /var/streaming/readme.txt
copying 3rdPartyAcknowledgements.rtf to /var/streaming/3rdPartyAcknowledgements.rtf
copying sample_100kbit.mov into /usr/local/movies/sample_100kbit.mov
copying sample_300kbit.mov into /usr/local/movies/sample_300kbit.mov
copying sample_100kbit.mp4 into /usr/local/movies/sample_100kbit.mp4
copying sample_300kbit.mp4 into /usr/local/movies/sample_300kbit.mp4
copying sample.mp3 into /usr/local/movies/sample.mp3
copying sample_50kbit.3gp into /usr/local/movies/sample_50kbit.3gp
copying sample_h264_100kbit.mp4 into /usr/local/movies/sample_h264_100kbit.mp4
copying sample_h264_300kbit.mp4 into /usr/local/movies/sample_h264_300kbit.mp4
copying sample_h264_1mbit.mp4 into /usr/local/movies/sample_h264_1mbit.mp4
copying streamingadminserver.pl into /usr/local/sbin/streamingadminserver.pl
copying Admin HTML to /var/streaming/AdminHtml directory

Launching streamingadminserver.pl

Installation Complete

Darwin Streaming Server Setup

In order to administer the Darwin Streaming Server you must create an administrator user [Note: The administrator user name cannot contain spaces, or single or double quote characters, and cannot be more than 255 characters long].
Please enter a new administrator user name: bestakas


You must also enter a password for the administrator user [Note: The administrator password cannot contain spaces, or quotes, either single or double, and cannot be more than 80 characters long].
Please enter a new administrator Password:
Re-enter the new administrator password:
Adding userName bestakas
Setup Complete!
root@kubuntu:~/DarwinStreamingSrvr5.5.5-Source/DarwinStreamingSrvr5.5.5-Linux#

에러없이 끝났다. 중간에 새로히 컴파일한 디렉토리가 생긴다는걸 모르고 30분간 또 좌절모드..

드디어 클라이언트 웹상에서 http://서버IP:1220을 입력...

아~! 성공했다.
fedora core10 에서 같은 방법으로 다시 한번 해봐야 겠다.


다음 포스팅은 DSS서버의 셋팅에 대해서 포스팅한다.