
ϵήǾ饤֥꡼ (dcl-5.2) 󥹥ȡ 

2000/10/24	ë ,  


0. Ϥ

Ǥ, Ǿ饤֥פ򥤥󥹥ȡ뤹ˤĤƽҤ٤. 

ΥСǤϿ޷ΤȤ, X (X С), PS (ݥȥ
ץ), Tek (ƥȥü) 3Ĥ򥵥ݡȤƤ. ɥƥ
Ȥ X11R4 (ʾ) 󥹥ȡ뤵ƤʤФʤʤ. 
˥ץ󥿡ȤƤϥݥȥץбΤΤɬפǤ. X, PS Ȥ
顼νϤбƤ.

dcl-5.0.2 ǤϡǾ饤֥פ򥤥󥹥ȡ, 줾Υץ
ȥեФŬڤ Mkinclude եѰդʤФʤʤ
, dcl-5.1 ʹߤǤ, Ѥ路ä뤿 configure 
ץȤѤ뤳Ȥˤä, Mkinclude եưŪǤ褦
ʤäƤ. 

Ȥаʲ OS ȥѥȹ礻, configure ץȤ
 Mkinclude եˤȤŤ, Ǿ饤֥פۤǤ뤳Ȥ
(dcl-5.1 ˤ)ǧƤ. 

  SunOS 4.1.4 + f77 + acc (SUN Compiler)		Mkinclude.sun1
  Solaris 2.6 + f77 + cc  (SUN Compiler)		Mkinclude.sol1
  Solaris 2.6 + frt + fcc (Fujitsu Compiler)		Mkinclude.sol2
  Solaris 2.6 + g77 + gcc (X ranlib Զ)		Mkinclude.sol3
  Digital UNIX V4.0 + f77 + cc				Mkinclude.alpha1
  Digital UNIX V4.0 + f90 + cc				Mkinclude.alpha2
  Vine Linux 1.1CR + g77 + gcc				Mkinclude.linux1
  Debian GNU/Linux 2.1 + f77(g77) + cc(gcc)		Mkinclude.linux2
  Kondara MNU/Linux 1.0 + g77 + gcc			Mkinclude.linux3
  Linux MLD 4.0 + f77(g77) + cc(gcc)			Mkinclude.linux4

(ưǧץåȥեˤĤ, configure ץ
 Mkinclude ե, sys ǥ쥯ȥ˼Ƥ. 
ե̾Ͼ嵭¦˽񤫤Ƥ.  dcl-5.1 Ф
Τ, Ƥޥΰ dcl-5.2 ȰۤʤäƤ뤳Ȥդ
뤳. )

Τ褦ŪŪʥץåȥեˤĤƤ, configure 
ȤѤưפ˥饤֥ιۤϲǽǤ. configure ץȤ
Ѥ󥹥ȡˡˤĤƤϡ1. configure ˤ륤󥹥ȡפ
Ȥ줿. configure ץȤˤ륤󥹥ȡ뤬ޤʤ
, 2. ѥװʹߤ򻲾Ȥ줿. 


1. configure ˤ륤󥹥ȡ

configure ץȤˤμưϸ GNU Υեȥ
Τ, ޤޤʥե꡼եȥǼ¸Ƥ. 
confiugre ץȤˤϤĤΥץѰդƤ, 桼
Ȥǥ󥹥ȡĶ򥫥ޥ뤳ȤǽǤ. Ūʥץ
ˤĤƤϰʲΤ褦ʤΤ. 

< ץ >

  % ./configure [options]

  [options]

  --help                  إץåν
  --quiet, --silent       ¹Ծ֤ɽ
  --prefix=PREFIX         󥹥ȡǥ쥯ȥ PREFIX 
                          ǥեȤ /usr/local
  --x-includes=DIR        X Window ƥ include եΤ
			  ǥ쥯ȥ
  --x-libraries=DIR       X Window ƥΥ饤֥Τǥ
			  ȥ
  --with-oldsrc           dcl-4.x ȥѥ֥ˤ

,  configure ץȤѤǾ饤֥פιˡ
ʲ̤Ǥ. 

  1) dcl ΤŸ

	% zcat dcl-5.2.tar.gz | tar xvf -
	% cd dcl-5.2

  2) configure ¹Ԥ

     (1) 񸻤 /usr/local/dcl-5.2 ˹ۤ

	% ./configure --prefix=/usr/local/dcl-5.2

     (2) configure ܤФѥȤϰۤʤΤѤ

	% setenv CC fcc
	% setenv FC frt
	% ./configure

  3) Ȥ make; make install  dcl Τ󥹥ȡ뤵

ʤ configure ˴ϢեȤƤϰʲΤ褦ʤΤ. 

  Mkinclude.in		: Mkinclude 뤿Υץȥ
  aclocal.m4		: DCL  autoconf ޥ
  configure		: configure ץ
  configure.in		: configure ץȺѥץȥ

饤֥ۤȤ make Ǥʤ, make Ѥ(ƽ˻
Ф) Makefile Ǥ Mkinclude ȤեǤ.
Mkinclude եϤ INSTALL եƱǾ饤֥Υȥå
ǥ쥯ȥˤä, ƥ˰¸뤤ĤΥޥ̾
Ƥ. configure Ϥ Mkinclude եưŪ. ⤷
configure  Mkinclude եȤäƤ⤦ޤ󥹥ȡ
ʤ,  Mkinclude եŬڤ˽񤭴Ƥ
(3. Mkinclude ե׻), ʲ˽Ҥ٤褦ʼǥ󥹥ȡ
ȤʤϤǤ.


2. ѥ

make ǥѥ뤪ӥ󥹥ȡ򤹤뤿, ޤѥ򤪤
ʤ.

  % setenv DCLDIR ~/dcl-5.2

Τ褦ˤ줫ܿ褦ȤǾ饤֥꤬֤Ƥǥ쥯
(ǤϤȤ桼Υۡǥ쥯ȥǾ饤֥꤬Ÿ
ƤȤ)Ķѿ DCLDIR ꤹ. δĶѿϸĿͤǥ
֥꡼ۤ, ѤȤˤ⻲ȤΤ .cshrc ˽񤭹
Ȥ褤.


3. Mkinclude ե

ȥåץǥ쥯ȥ (ʤ cd $DCLDIR ǤϤäȤ)  Mkinclude 
Ȥե뤬äƤĤΥޥ̾Ƥ, $DCLDIR ʲ
 Makefile ǤϤξ include ƻȤäƤ.

ޤ, Mkinclude եƬʬˤϥեå롼뤬ҤƤ
. (դĤϥȥȤƤƤư. )

0. ϤˡפǤҤ٤, ǾɸĶʳǤ⤤ʴĶ
Ǿ饤֥ϰܿƤ, κѤ줿 Mkinclude ե뤬 
$DCLDIR/sys βˤΤ, ɬפ˱ $DCLDIR ǥ쥯ȥ˥ԡ
ѹѤФ褤.

Mkinclude եդ٤ޥ̾ȤƼΤΤ.

a) ޥ, 饤֥Ǽꤹޥ

  BINDIR   : dclfrt ʤɤΥޥɤǼǥ쥯ȥ
  LIBDIR   : 饤֥Ǽ뤿Υǥ쥯ȥ
  DBASEDIR : ǡ١ϢΥեǼ뤿Υǥ쥯ȥ

Ǿ饤֥򥤥󥹥ȡ뤷褦Ȼפäͤ, ɬ root ˤʤ
櫓ǤϤʤǤ, Υޥ̾ϽǤϤ줾,
$DCLDIR/bin, $DCLDIR/lib, $DCLDIR/lib/dcldbase ȤʤäƤ. 
ƺǽ餫饷ƥԤȤϰۤʤ˥󥹥ȡ뤷褦Ȥ
Ȥ, ʬ񤭴ɬפ.

  DCLVERSIOB : Ǿ饤֥ΥС (x.x )
  DCLVERNUM  : Ǿ饤֥ΥС (xx )
  DCLLANG    : ɤθФѥå򼨤

configure ץȤѤƤ, ˤŬڤͤäƤϤ
. Ȥ Mkinclude Խ褦Ȥ, ⤷⤳ͤ
ʤ, С̾(dcl-5.2 ʤ 52)񤤤Ƥ饤֥
䤹.


b) X ϢΥץꤹޥ

  XINCPATH : X Ϣ include ե뤬Ƥǥ쥯ȥ
  XLIBPATH : X ϢΥ饤֥(libX11.a)Ƥǥ쥯ȥ
  XLIBOPT  : X ϢѤ饤֥̾

X Ϣ include ե뤬, 餫᥷ƥबõˤ椯ɸŪʥǥ
쥯ȥˤƤ XINCPATH ϻꤷʤƤ褤. ⤷⤽Τ褦
ʤäƤʤ, C Υץץå᤹륪ץȤ㤨

  XINCPATH = -I/usr/X11R5/include

Τ褦˻ꤹ. 

Ʊͤ, X ϢΥ饤֥(ѤΤ libX11.a Τ), 餫
᥷ƥबõˤ椯ɸŪʥǥ쥯ȥˤƤ XLIBPATH 
ꤷʤƤ褤. ⤷⤽Τ褦ˤʤäƤʤ, ᤹
ץȤ㤨

  XLIBPATH = -L/usr/X11R5/lib

Τ褦˻ꤹ. 

X ϢѤ饤֥ libX11.a ΤߤǤ뤬, ƥˤäƤϤ
Ѥ뤿˥ͥåȥطΥ饤֥ libsocket.a libnsl.a ɬ
פȤ뤳Ȥ. Τ褦ʾ XLIBOPT ˤΥ饤֥̾
᤹륪ץȤƽ񤭲äʤФʤʤ. 

c) Ϥ٤ X ϢʳΥ饤֥̾˴ؤޥ

  LDLIBOPT : X ϢʳΥ饤֥̾

X ϢʳɬפȤʤ饤֥᤹̾륪ץȤ
ꤹ. դĤ, إ饤֥(-lm)ɬܤǤ. ʳ,
SYSTEM V Ϥ OS (Ȥ SunOS 5.x ʤ)Ǥϥåȥ饤֥
(-lsocket  -lnsl)ɬפȤʤ. 

d) 饤֥깽ۤ˺ݤ뤤Ĥ˴ؤޥ

  MISC1EXT : misc1 ˤ, ¾ǤѤʤ饤֥̾
  OLDSRC   : ver.4 θŤ󥿡ե᤿ǥ쥯ȥ̾

MISC1EXT ˤ src/misc1 βˤä, ߤΤȤ¾Υ饤֥꤫
Ѥ뤳ȤΤʤ饤֥̾󵭤Ƥ. 0. Ϥˡפ˽
Ƥ褦ʴĶǤ, Υ饤֥⤹٤ƥѥ롦
ȡ뤬ǽǤ뤬, ƥˤäƤ MISC1EXT ΤΤĤ
ޤܿǤʤȤ뤫⤷ʤ. Τ褦ʾ, ޤܿ
ʤ饤֥򤳤ΥꥹȤ鳰ƤФ褤. 㤨, fiolib ΰ
ޤʤ, 

  MISC1EXT = clcklib randlib hexlib reallib

Τ褦 fiolib ꥹȤ鳰Ф褤. 

Ver.4 ѤƤ ver.5 ǳ줿롼 src/grph1/olrsrc,
src/grph2/oldsrc ȤƼƤ. θŤ󥿡ե
ܿ, 

  OLDSRC = oldsrc

Ȼꤹ. Ť󥿡եɬפʤȤ OLDSRC ϶Τޤޤˤ
ƤФ褤.

e) ޥɤӤΥץ˴ؤޥ

  CC      : C ѥ̾
  CFLAGS  : C ѥ餬᤹륪ץ
  FC      : Fortran ѥ̾
  FFLAGS  : Fortran ѥ餬᤹륪ץ
  RANLIB  : 饤֥륳ޥ̾

C  Fortran Υޥ̾ӥѥ饪ץϤ줾Υ
ƥŬڤʤΤꤹ뤳. ƥˤäƤϥ饤֥
ݤ, 饤֥饤֥경ʤФʤʤ.  RANLIB 
ˤϤΥޥ̾ꤹ. ɬפǤʤƥˤĤƤ 
RANLIB Ȥ, Ȥ touch ޥɤʤɤꤷƤФ褤.

() Fortran  C η絬

ƥ˰¸롼 X ϢΥ롼 C Ѥƽ񤫤
. Fortran  C Ȥη˺ݤƤ, SunFORTRAN ǻȤƤ褦
C ¦δؿ̾ '_' ()դä뤳Ȥ, Fortran ¦
 '_' ʤΥ֥롼(뤤ϴؿ)ȤƸƤ֤ȤǤפ
롼˽äƤ. 

ϸ Fortran ץΥѥ, 롼̾
ƥդä뤳Ȥˤۤʤʤ. SunFORTRAN ǻȤ
Ƥ뤳Τ褦ʷ絬˽äƤʤƥ⤢뤬, Τ褦ʥ
ƥǤ¿ξ Fortran Υѥ饪ץȤƥ
ղä륪ץ(Ȥ IBM AIX XL Fortran/6000 (xlf) Ǥ 
-qextname) ѰդƤ뤳Ȥ¿Τ, ޥ˥奢ʤɤտ
Ȥ줿. 

Fortran ¦˥ղä륪ץ󤬤ʤ, C ¦δ
̾饢äƤФ褤. 

f) ޥ˥奢Ѥ륳ޥɤ˴ؤޥ

  JLATEX  : jLaTeX Υޥ̾
  DVI2JPS : dvi ե PS եѴ륳ޥ̾. 

 dcl-5.1 ʹѤʤ. dcl-5.0.2 Ǥ, $DCLDIR/doc 
 jLaTeX ǽ񤫤줿ޥ˥奢뷲줿, dcl-5.1 ʹߤϥޥ˥
뷲źդƤʤ. ޥ˥奢

	http://www.gfd-dennou.org/arch/dcl/html/dcl_doc.html

ꤵ줿. 

g) math1/syslib/glpget.f Ѥޥ

  INTMAX
  REALMAX
  REALMIN
  REPSL

ξܺ٤ˤĤƤ src/math1/syslib  NOTE 򻲾Ȥ줿. 

h) misc1/clcklib/clckst.c Ѥޥ

  CLK_PER_SEC (CLOCKS_PER_SEC)
  CLK_RSL_TCK (CLK_TCK)

ϥå˼줿̻Ҥб. ANSI б C ѥ
ϤդĤ, å˼줿̻ҤƤΤǤΥޥ
ꤹɬפϤʤ. 

ܤ src/misc1/clcklib  NOTE 򻲾Ȥ줿. 

i) math1/oslib Ѥޥ

  OSQARN
  OSGARG

ߤΤȤ, OSQARN ˤĤƤ iargc ޤ dummy  2 Ĥǽ
. ƥब iargc ľ iargc , ʤ dummy 
ꤹ. 

OSGARG ˤĤƤ getarg ޤ dummy  2 ĤǽǤ. 
ब getarg ľ getarg , ʤ dummy ꤹ. 

ξܺ٤ˤĤƤ src/math1/oslib  NOTE 򻲾Ȥ줿. 

j) grph1/csgi Ѥޥ

  CSGI

ICHAR 0  255 δ֤֤ͤ general, -127  127 δ
֤ͤ other ꤹ. 

ܤ src/misc1/clcklib  NOTE 򻲾Ȥ줿. 


4. make - ץΥѥ

ޤǽ, ȥåץǥ쥯ȥ (Ĥޤ cd $DCLDIR ǤϤä
Ȥ)

  % make

Ȥ, ɬפʥѥ뤪ӥǡ١եκ,  
$DCLDIR/bin ǥ쥯ȥˤ륳ޥɤ꤬ʤ. 


5. make - 󥹥ȡ

ѥ뤬饤󥹥ȡ򤪤ʤ. 

  % make install

Ȥ, 饤֥ȥǡ١ι, env2 ˤ륢ץꥱ
ץκȤ $BINDIR ؤΰư, ɬפ˱ dclfrt 
ʤɤΥޥɷ $BINDIR ؤΰưʤ.


6. ǥץκ

ޤǤɬפʺȤϽäƤΤ,  $DCLDIR/demo ˰ưƥ
ץ.

  % cd $DCLDIR/demo
  % make

make λ, ƥǥ쥯ȥ򲼤äƥǥץ¹ԤƤߤȤ
. եåϤޤΤμ¹ϼỲȤΤ. 


7. 

Ǿ饤֥Ѥˤ dclfrt ޥɤѤ. ϴŪ 
Mkinclude Υޥ̾ FC ǻꤷ Fortran ѥΥޥɤƱ
, ޤǤˤäƺ줿饤֥򤢤餫󥯤
ˤʤäƤ. ΥޥɤѤ뤿ˤ, Mkinclude Τʤ 
BINDIR ǻꤵƤǥ쥯ȥ̾򥷥ѿ $path ˽񤭲äƤ
ʤФʤʤ.  .cshrc ˽񤭲äƤдñǤ. Ȥ
 test01.f Ȥեåޤ༡Τ褦ʥץबäȤ
(դĤ Fortran ѥǤ -o ץǼ¹Էե̾
ꤹ),

      PROGRAM TEST01
 
      WRITE(*,*) 'WORKSTATION ID (I) ? ;'
      CALL SGPWSN
      READ(*,*) IWS
 
      CALL SGOPN(IWS)
      CALL SGFRM
      CALL SGSVPT(0.1,0.9,0.1,0.9)
      CALL SGSWND(0.0,10.0,0.0,10.0)
      CALL SGSTRN(1)
      CALL SGSTRF
      CALL SLPWWR(1)
      CALL SLPVPR(1)
      CALL SGTXZU(5.0,5.0,'TEST FOR GRPH1',0.03,0,0,3)
      CALL SGCLS
 
      END

  % dclfrt -o test01 test01.f

ˤä test01 Ȥ¹ԥե뤬. (ʲɸ饤֥
Ǥ.)

  % test01

Ȥ

  WORKSTATION ID (I) ? ;
  1:X, 2:PS, 3:Tek ;

ȤƤ (ơ̾ΥꥹȤ SGPWNS ˤäƽϤƤ
) Τ, X ɥƥबưƤ֤1Ϥȥ
ɥ, ɥΰ֤ꤹ褬Ϥޤ. ڡ, 
ɽνλϥåǤʤ.  2 (PS)ꤹ, dcl.ps Ȥե
뤬ȥǥ쥯ȥˤǤΤ

  % lpr dcl.ps

Ȥ PostScript ץ󥿡˽Ϥ. ޤ3 (Tek)ꤹȥ
ȥüǤ褬ǽǤ.


8. 

ǥڡ;͵ʤ, 󥹥ȡ˺줿֥
ȥե, 뤤ϥǥץ, TeX ϢΥեõ. ȥ
ץǥ쥯ȥ

  % make clean

ȤѤʥե뤬õ. 

ʤ, 

  % make clean.all

Ȥ, 饤֥ʤɤ⤹٤ƾõ. 

