[KEKB Bunch Feedback Group]

EPICS R314.7及び関連ソフトウエアインストールメモ(Japanese)


by とびやま まこと(Makoto Tobiyama)/KEKB ビームモニターグループ

警告
以下の記述に関しては、意図する、しないに関わらず極めて多くの誤り、誤解が含まれていると思われますので、決して信用してはいけません。これを信じて起きた損害に関しては、当方は一切責任を持ちません。


If you need to contact with the author, please E-mail makoto.tobiyama@kek.jp.
目次

1.はじめに

EPICSシステムをRedHat Linux 9が動作しているPCにインストールする手順のメモを紹介します。インストールするPCのスペックは という、大昔のものですが、Linuxをinstallするまでは、Windows2000でちゃんと現役+主力機器として動作していました(当フィードバックグループはKEKB加速器の中でも1,2を争う超貧乏グループなのです)。このシステム上に、Red Hat Linux9をインストール、aptで各種ファイルを最新のものにアップグレードしています。

このPC上に、Linux-IOCを構成、Ethernetをしゃべる機器(位相モニター)を制御するため、(現時点で)最新のEPICS-coreとasyncドライバー、sequencerをのせる手順を紹介します。

2.Sourceファイルを取ってくる

mozillaなどweb browserを立ち上げ、googleか何かでEPICSを検索すると、ANLのページが引っかかると思います。そこのdownloadの所から、最新のepics base及び必要なファイルを持ってきます。今回持ってきたのは だけです。あと、extensionsとかCA gatewayとか必要な人は各自ご努力ください。

3.baseをmakeする

suでルートの下にインストールディレクトリを作り、chownで自分を所有者にします。
# setenv HOST_ARCH linux-x86
# mkdir /local/R314.7
# chown 自分:自分のグループ /local/R314.7
このあと、baseを展開、makeします。
~% cd /local/R314.7
~% zcat ~/download/baseR3.14.7.tar.gz |tar -xvf -
~% mv base-3.14.7 base
~% cd base
~% gmake
~% cd bin/linux-x86
~% ln -s ../../config/tools/makeMakefile.pl .
~% ln -s ../../config/tools/installEpics.pl .
下の2行は、未だに必要なようです。

自分のディレクトリで、開発用のディレクトリを作ります。まず、.cshrcの中に忘れずに

setenv HOST_ARCH linux-x86
の記述を入れておきます。また、pathの中に
set path=($path /local/R314.7/base/bin/linux-x86 . )
のように、コマンドの所にpathを通しておきます。 次に、開発用のディレクトリを作り、その下に環境を構成します。
~% cd
~% mkdir epicsApp
~% cd epicsApp
~% makeBaseApp.pl -t example fblinux
~% makeBaseApp.pl -i -t example fblinux
~% make
こうすると、episAppの下にfblinuxというsub directoryができ、各種example等が入った環境が出来ます。

5.modulesのインストール、設定

ASYNドライバーとシーケンサーをinstallします。baseの所に行って、
~% cd /local/R314.7
~% mkdir modules/soft
~% cd moduels/soft
~% zcat ~/download/asyn4-2-1.tar.gz |tar -xvf -
~% zcat ~/download/sncseq_cvs.tar.gz |tar -xvf -
とそれぞれ展開し、それぞれのconfigureの中にあるRELEASEを編集します。
~% cd /local/R314.7/modules/soft/4-2-1/configure
~% emacs RELEASE &

#EPICS_BASE=/usr/local/iocapps/R3.14.6/support/base/3-14-6-asd1
EPICS_BASE=/local/R314.7/base

~% cd /local/R314.7/modules/soft/seq/configure
~% emacs RELEASE &

EPICS_BASE=/local/R314.7/base

これで、それぞれをmakeします。
~% cd /local/R314.7/modules/soft/4-2-1
~% make |&tee make.log

~% cd /local/R314.7/modules/soft/seq
~% make |&tee make.log

次に、開発ディレクトリの設定をします。ここもRELEASEです。
~% cd ~/epicsApp/configure
~% emacs RELEASE &

# If you don't want to install into $(TOP) then
# define INSTALL_LOCATION_APP here
#INSTALL_LOCATION_APP=<fullpathname>
ASYN=/local/R314.7/modules/soft/4-2-1

#If using the sequencer, point SNCSEQ at its top directory:
SNCSEQ=$(EPICS_BASE)/../modules/soft/seq
また、srcのMakefileも変更が必要です。
#----------------------------------------
#  ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================

ASYN = /local/R314.7/modules/soft/4-2-1/
ASYN_LIB = /local/R314.7/modules/soft/4-2-1/lib/linux-x86
ASYN_BIN = /local/R314.7/modules/soft/4-2-1/bin/linux-x86

fblinux_DBD += fblinuxInclude.dbd
と、ライブラリの追加
#==================================================
# Build an IOC support library

LIBRARY_IOC += FBsupport
# xxxRecord.h will be created from xxxRecord.dbd
#DBDINC += xxxRecord
# install devXxxSoft.dbd into <top>/dbd
#DBD += xxxSupport.dbd

# The following are compiled and added to the Support library
FBsupport_SRCS += devB4phase.c
#xxxSupport_SRCS += devXxxSoft.c

FBsupport_LIBS += asyn
FBsupport_LIBS += $(EPICS_BASE_IOC_LIBS)

#=============================
のような記述が必要となります。また、defaultで入っているxxxなんとかは不要なので、 Makefileから削除して、make cleanして、もう一度makeしておくと良いと思います。

6.おわりに

Linux PC上にEPICS R314.7をinstallする方法を紹介しました。この方法は、 物質構造科学研究所放射光研究施設光源研究系帯名さまのメモをもとにしています。また、KEKBコントロールグループの山本さまのご助力を賜りました。感謝します。
Makoto Tobiyama
17/May/2005

Return to FB Home Page...