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

2004/10/17	ë ,  


0. Ϥ

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

ΥСǤϿ޷ΤȤ, X (X С), PS (ݥȥ
ץ), Tek (ƥȥü), Gtk (GIMP Toolkit) 4Ĥ򥵥ݡȤƤ.
ɥƥȤ X11R4 (ʾ) 󥹥ȡ뤵Ƥʤ
Фʤʤ. ˥ץ󥿡ȤƤϥݥȥץбΤΤɬ
Ǥ. X, PS Ȥ⥫顼νϤбƤ. Gtk 뤤 Gtk2 
ȡ뤵Ƥ, 4ܤνϥǥХȤѤǤ. 

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

ŪŪʥץåȥեˤĤƤ, 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 ȥѥ֥ˤ
  --disable-gtk           Gtk Ȥʤ
  --disable-gtk2          Gtk2 Ȥʤ


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

  1) dcl ΤŸ

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

  2) configure ¹Ԥ

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

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

     (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 ǥѥ뤪ӥ󥹥ȡ򤹤뤿, 줫ܿ褦
Ǿ饤֥꤬֤Ƥǥ쥯ȥ(ǤϤȤ桼
Υۡǥ쥯ȥǾ饤֥꤬ŸƤȤ)Ķѿ
DCLDIR ꤷʤФʤʤ. , configure ˤä Mkinclude 
ե뤬Ƥ,  DCLDIR Ƥ
Τ, դĤϥ桼Ķѿ DCLDIR ꤹɬפϤʤ.

configure ˤä Mkinclude ե뤬ʤä,
Mkinclude ե DCLDIR Ŭڤ˽񤯤, ʲΤ褦˴Ķѿ
ƥѥ򤪤ʤɬפ. 

  % setenv DCLDIR ~/dcl-5.3


3. Mkinclude ե

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

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

0. ϤˡפǤҤ٤, ǾɸĶʳǤ⤤ʴĶ
Ǿ饤֥ϰܿƤ, κѤ줿 Mkinclude ե뤬 
$DCLDIR/sys βˤ(,  dcl-5.1 Ф񸻤ʤΤ, 
٤˸Ƥ). 

Mkinclude եդ٤ޥ̾ȤƼΤΤ.

a) ޥ, 饤֥Ǽꤹޥ

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

Υޥ̾ϽǤϤ줾, $(prefix)/bin, $(prefix)/lib,
$(prefix)/include, $(LIBDIR)/dcldbase ȤʤäƤ. ʤȤ̤,
嵭Υǥ쥯ȥŪ֤ξꤹ뤿, LBINDIR,
LLIBDIR, LINCDIR, LDBASEDIR ʤɤ. 

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

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


b) X ϢΥץꤹޥ

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

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

  XINCPATH = -I/usr/X11R6/include

Τ褦˻ꤹ. 

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

  XLIBPATH = -L/usr/X11R6/lib

Τ褦˻ꤹ. 

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

Τۤ, Gtk ˴ؤޥȤ, GTKVERSION, GTK_CFLAGS, GTK_LIBS
ʤɤ. 

c) ޷֤ο˴ؤޥ

  DCLNWS : ޷֤ο

¤ιǤ, X, PS, Tek 3Ĥν֤򥵥ݡȤƤ. ξ
, DCLNWS  3 Ȥʤ.  Gtk 򥵥ݡȤ, DCLNWS  4 
ʤ. 

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) math1/syslib/glpget.f Ѥޥ

  INTMAX
  REALMAX
  REALMIN
  REPSL

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

g) misc1/clcklib/clckst.c Ѥޥ

  CLK_PER_SEC (CLOCKS_PER_SEC)
  CLK_RSL_TCK (CLK_TCK)

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

ܤ src/misc1/clcklib  NOTE 򻲾Ȥ줿. 

h) math1/oslib Ѥޥ

  OSQARN
  OSGARG

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

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

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

i) grph1/csgi Ѥޥ

  CSGI

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

ܤ src/misc1/clcklib  NOTE 򻲾Ȥ줿. 

j) grph1/swpack Ѥޥ

  IWIDTH  : X ɽ륦ɥβ
  IHEIGHT : X ɽ륦ɥν

ͤϤ줾 900, 650 ȤʤäƤ. 

k) grph2/uwpack Ѥޥ

  MAXNGRID : ΰ礭

ͤ 4000 ȤʤäƤ. 


4. make - ץΥѥ

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

  % make

ȤаʲκȤԤ. (åˤ, make ζŪʥå
̾򵭤.) ѥ(object), 饤֥κ(library), ǡ١
(dbase), env2 ˤ륢ץꥱץκ(exec), 
$DCLDIR/bin ǥ쥯ȥˤܥޥɤκ(script). 


5. make - 󥹥ȡ

ѥ뤬饤󥹥ȡ򤪤ʤ. 

  % make install

Ȥ, 饤֥, ǡ١, ץꥱץȥޥ
ɥޥɷŬʥǥ쥯ȥ˥ԡ.


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

Ȥ. ޤ3 (Tek)ꤹȥƥȥüǤ褬ǽǤ.


8. 

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

  % make clean

ȤѤʥե뤬õ. 

ʤ, 

  % make distclean

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

