apt source list for Debian sarge

 gcc 버전 문제로 인하여 데비안-3.1 Sarge 를 설치하던 중, 더이상 기존의 stable apt 업데이트는 sarge 및 기타 하위 버전을 지원하지 않는 것을 알았다.

 아마도, 다른 아카이브로 옮겨간 듯 싶어 잠시 공식 아카이브를 찾아보니 다음의 메시지를 볼 수 있었다.

See http://www.debian.org/ for information about Debian GNU/Linux.

This FTP site is a repository for old debian releases. For new releases
please see ftp://ftp.debian.org/debian/.

Releases are stored by their codenames under the dists/ directory.
etch is Debian 4.0
sarge is Debian 3.1
woody is Debian 3.0
potato is Debian 2.2
slink is Debian 2.1
hamm is Debian 2.0
bo is Debian 1.3
rex is Debian 1.2
buzz is Debian 1.1

If you are using APT the relevent sources.list entries are like:
deb http://archive.debian.org/debian/ $RELEASE main contrib
for example:
  deb http://archive.debian.org/debian/ sarge main contrib

즉, /etc/apt/sources.list 파일안에

deb http://archive.debian.org/debian/ sarge main contrib
라인을 추가하면 된다. :)

물론 가장 기본적인 소스 리스트 이므로 앞으로 더 필요한 소스 리스트들이 있다면 별도로 추가해서 사용해야 할 것이다.


배포판에 설치된 GCC 버전정보

 Linux/Unix 프로그래밍을 하다보면 GCC 버전에 영향을 받는 경우가 있다.

 예를 들면 ACE 라이브러리를 컴파일 할 경우, gcc-4.x 대의 버전에는 컴파일 오류가 발생한다.

 그래서 부득이 gcc/g++ 을 다시 설치하려고 해도 여의치 않는 경우가 많다. 이럴 경우 다른 배포판을 찾아보게 되는데, 여기에 배포판마다 가지고 있는 gcc의 버전 정보를 싣는다.

Distribution Version Compiler version Provided by Date
BeOS R5.1, Zeta gcc 2.9-beos-000224 Yuri Kiryanov 18 June 2004
Debian Release 2.2 gcc 2.95.2 Craig Southeren <craigs@postincrement.com> 15 June 2004
Release 3.0
(Woody)
gcc 2.95.4 Craig Southeren <craigs@postincrement.com> 11 June 2004
Sarge gcc 3.3.5 (final stable version)
gcc 3.3.3 (interim releases)

Kilian Krause <kk@verfaction.de>
15 June 2005
Sid gcc 4.0.1 Kilian Krause <kk@verfaction.de> 19 July 2004
FreeBSD Release 4.8 gcc 2.95.4 Craig Southeren <craigs@postincrement.com> 15 June 2004
Release 4.9
(Stable)
gcc 2.95.4 20020320 Pavel Pavlov <block111@mail.ru> 14 June 2004
Gentoo Stable gcc 3.3.3 Brian Raymond <brian.raymond@dataline.com> 11 June 2004
Mandrake Release 7 (Air) gcc 2.95.2 Craig Southeren <craigs@postincrement.com> 11 June 2004
Release 9.1 gcc 3.2.2 Rene Schallner <rs@rocksolid.at> 11 June 2004
Release 9.2 (FiveStar) gcc 3.3.1 Alexandre Aractingi <aaractingi@libertysurf.fr> 11 June 2004
Release 10.0 gcc 3.3.2 Rene Schallner <rs@rocksolid.at> 11 June 2004
Release 10.1 gcc 3.4.1 Frederic Crozat <fcrozat@mandrakesoft.com> 30 Sep 2004
MontaVista Professional 3.1
for XScale
gcc version 3.3.1 (MontaVista 3.3.1-3.0.10.0300532 2003-12-24) Yuri Kiryanov 18 June 2004
NetBSD Release 1.6.1 gcc 2.95.3 Craig Southeren <craigs@postincrement.com> 15 June 2004
OSX 10.1 Server Edition gcc 2.95.2 Craig Southeren <craigs@postincrement.com> 15 June 2004
10.2 Jaguar gcc 3.1 Malcolm Caldwell <malcolm.caldwell@ntu.edu.au> 11 June 2004
10.2 Server Edition gcc 3.3 20030304 Craig Southeren <craigs@postincrement.com> 15 June 2004
10.3 Panther gcc 3.3 20030304 Brian Raymond <brian.raymond@dataline.com> 22 June 2004
10.4 Tiger gcc 4.0.0
(powerpc-apple-darwin8-gcc-4.0.0)
Hannes Friederich <hannesf@ee.ethz.ch> 15 June 2005
OpenBSD Release 3.4 gcc 2.95.3 Craig Southeren <craigs@postincrement.com> 15 June 2004
Red Hat Release 6.1
(Cartman)
gcc egcs-2.91.66 Bruce Ferrell <bferrell@baywinds.org> 11 June 2004
Release 6.2 (Zoot) gcc egcs-2.91.66 Alexandre Aractingi <aaractingi@libertysurf.fr>  
Release 7.3 (Valhalla) gcc 2.96 20040412 Malcolm Caldwell <malcolm.caldwell@ntu.edu.au> 11 June 2004
Release 8.0A (Second-Edition) gcc 3.2 20020903
(Red Hat Linux 8.0 3.2-7)
Federico Pinna <f.pinna@reitek.com> 11 June 2004
Release 9 (Shrike) gcc 3.2.2
(gcc 2.96 available as “gcc296”)
Craig Southeren <craigs@postincrement.com> 11 June 2004
Advanced Server release 2.1AS/m
(Pensacola)
gcc 2.96 Malcolm Caldwell <malcolm.caldwell@ntu.edu.au> 11 June 2004
Enterprise Linux AS release 3
(Taroon Update 2)
gcc 3.2.3 Malcolm Caldwell <malcolm.caldwell@ntu.edu.au> 11 June 2004
Fedora Core 1 gcc 3.2.2 / gcc 3.2.3 Craig Southeren
<craigs@postincrement.com>
11 June 2004
Fedora Core 2 gcc 3.4.0 / gcc 3.3.3 Derek Smithies <derek@indranet.co.nz> 11 June 2004
Fedora Core 3 gcc 3.4.2 / gcc 4.0.0 Craig Southeren
<craigs@postincrement.com>
14 June 2005
Fedora Core 4 gcc 4.0.0 Craig Southeren
<craigs@postincrement.com>
14 June 2005
Slackware Version 9.1 gcc 3.2.3 Craig Southeren <craigs@postincrement.com> 11 June 2004
Version 10.0 gcc 3.3.4 Craig Southeren <craigs@postincrement.com> 24 June 2004
Suse Release 8 ES on AMD64 gcc 3.2.2 Craig Southeren <craigs@postincrement.com> 15 June 2004
Version 9.0 gcc 3.3.1 Jan Willamowius <jan@willamowius.de> 11 June 2004
Version 9.1 gcc 3.3.3 Kilian Krause <kk@verfaction.de> 17 June 2004
Tornado
(VxWorks)
2.0.1 for ARM gcc 2.7.9-970819
egcs-971225 tornado 2.0
Mark DeBruin
mark.de.bruin@philips.com
11 June 2004
2.1.1 for ARM gcc 2.9-010413 Mark DeBruin
mark.de.bruin@philips.com
11 June 2004
2.1.1 for MIPS gcc 2.96 Mark DeBruin
mark.de.bruin@philips.com
11 June 2004
2.2.1 for MIPS gcc 2.96-mips3264-010729 Mark DeBruin
mark.de.bruin@philips.com
26 August 2004
2.2.1 for XScale gcc 2.9-010413 Mark DeBruin
mark.de.bruin@philips.com
11 June 2004

 출처 : http://www.voxgratia.org/docs/compilers.html#intro

ACE library 설치법..

1. 공식 다운로드 페이지에서 ACE-5.5.tar.gz파일을 다운로드 받습니다.

2. 환경 변수를 설정합니다.(~/.bash_profile)
  – ACE_ROOT=/home/k2/Apps/ACE_wrappers;export ACE_ROOT
  – LD_LIBRARY_PATH=$ACE_ROOT/ace:$ACE_ROOT/lib:$LD_LIBRARY_PATH;
    export LD_LIBRARY_PATH

3. $ACE_ROOT/ace에서 심볼릭 링크 추가합니다.
  – ln -s config-linux.h config.h

4. $ACE_ROOT/include/makeinclude 에서 심볼릭 링크 추가합니다.
  – ln -s platform_linux.GNU platform_macros.GNU

5. $ACE_ROOT/ace에서 make

6. 컴파일 제대로 되었는지 확인합니다.
  – $ACE_ROOT/examples/Threads에서 make
  – ./task_one 실행하면은 아래 결과처럼 나오면 성공이에요
  (3076410288) in iteration 1
  (3076410288) in iteration 2
  (3076410288) in iteration 3
  (3076410288) in iteration 4
  (3076410288) in iteration 5
  (3076412064) done

7. 설치된 라이브러리 디렉토리는 $ACE_ROOT/lib입니다.

8. 그 다음 ACE 라이브러리를 확인하여 서버 프로그램 개발을 하면 됩니다.

출처 : http://sexymiru.egloos.com/1967295

——————————————————————————————

 실행환경 : ubuntu-10.04 Desktop 버전에서 에러 발생.

 컴파일 중 재정의 문제가 발생. 설치가 진행되지 않는다. configure 를 이용한 설치에도 제대로 진행이 되지 않았다.

 구글과 ACE 메일링 리스트를 살펴서 여러가지 해결법을 찾아보았지만 보이지 않았다… 어떻게 해야되는 것일까…

 Ubuntu-09.04(혹은 09.10) Server 버전에서는 아무 문제 없이 컴파일 되는 것을 확인 했다. 특별히 배포판을 가리지는 않는 것 같다. 아마도 문제점은 커널 버전 혹은 g++ 의 버전 정도가 될 것 같다.

 재정의 컴파일 오류가 났으니 특정 라이브러리가 설치되지 않아서 생기는 문제는 아닌 것 같다.

 사실, ACE-5.8.* 버전은 설치가 쉽게 되었다. 하지만 ACE-5.8.* 대의 버전을 설치할 경우, ACE-5.5.* 버전에서 지원하는 메소드 및 함수가 지원되지 않은 것들이 있다.

 즉, 내가 필요로 하는 메소드와 함수들은 ACE-5.8.* 버전에서는 지원하지 않는 것이다.

 흠.. 조금 더 낮은 버전에서 찾아볼까..

———————————————————————————-

 설치의 실마리를 찾았다.

  • windows
    • ACE_wrapper/ace 에서
    • config.h 파일 생성
      #define ACE_HAS_STANDARD_CPP_LIBRARY 1
      #include “config-win32.h”
  • linux
    • ACE_wrapper/ace 에서
      ln –s config-linux.h config.h
    • ACE_wrapper/include/makeinclude 에서
      ln –s platform_aix_ibm.GNU platform_macros.GNU
    • .bash_profile
      export ACE_ROOT=~/Library/ACE-5.7.9
      export LD_LIBRARY_PATH=$ACE_ROOT/ace
    • ACE_wrapper/ace 에서
      ../configure –enable-stdcpplib
      gmake buildbits=64
  • AIX
    • ACE_wrapper/ace 에서
      ln –s config-aix-5.x.h config.h
    • ACE_wrapper/include/makeinclude 에서
      ln –s platform_aix_ibm.GNU platform_macros.GNU
    • .profile
      export ACE_ROOT=$HOME/lib/ACE-5.5/ACE_wrappers
      export LIBPATH=.:$ACE_ROOT/ace
    • ACE_wrapper/ace 에서
      ../configure –enable-stdcpplib
      gmake buildbits=64 static_libs=1

 출처 : http://anyons.net/tc/entry/ACE-%EC%84%A4%EC%B9%98-%EB%B0%A9%EB%B2%95