在windows安装epics base,以及JCA的使用

本文介绍了在Windows环境下安装EPICS Base的过程及遇到的问题。包括软件组合的选择、环境变量的设置、编译步骤等关键信息。

最近想在windows上也装个epics base。昨天实验了一下,问题多多。还是没有在linux下安装来的方便 。不同版本的gnu make,VC,perl,epics base组合在一起,编译报错也不同,搞的我很郁闷。最后还是用比较老的base版本编译通过了。

软件组合:gnu make 3.80,ActivePerl-5.8.6.811,VC 6,epics base 3.14.5。另外安装了Exceed8.0

1、安装VC 6.0,perl,exceed,make(将gnumake.exe放入make-3.80目录即可)

2、设置环境变量。通过编辑 base-3.14.5/startup/win32.bat 来设定环境变量,为方便起见,可以将win32.bat复制到C:/Documents and Settings/%HOST_NAME%
环境变量的设置根据自己的进行修改
set PATH=C:/WINDOWS;C:/WINDOWS/SYSTEM32
set PATH=%PATH%;E:/epics/soft/make-3.80;E:/Perl/bin
call "E:/Program Files/Microsoft Visual Studio/VC98/Bin/vcvars32.bat"
set EPICS_HOST_ARCH=win32-x86
set PATH=%PATH%;E:/epics/base-3.14.5/bin/%EPICS_HOST_ARCH%
set PATH=%PATH%;E:/epics/extensions/bin/%EPICS_HOST_ARCH%
set HOST_ARCH=WIN32
set MAKEFLAGS=-w
set HOME=/home/%USERNAME%
set PATH=%PATH%;D:/Program Files/Java/jdk1.5.0_08/bin
set PATH=%PATH%;E:/Program Files/Hummingbird/Connectivity/8.00/Exceed

set TMP=E:/temp
set include=%include%;E:/epics/base-3.14.5/include/os/WIN32
set EPICS_BASE=E:/epics/base-3.14.5
set EPICS_EXTENSIONS=E:/epics/extensions

REM    ===================================================

set PATH=%PATH%;E:/epics/test/bin/win32-x86;E:/epics/soft/jca/jca2.1.2/win32-x86
set CLASSPATH=.;E:/epics/soft/jca/jca2.1.2/jca.jar;E:/epics/soft/SimpleJCA/SimpleJCA.jar;E:/epics/soft/SimpleJCA/JProbe.jar

这里最后两项是后面建立IOC和使用JCA编java程序时我添加的,编译BASE时可以不使用

3、编译BASE。在命令提示符下先运行win32.bat,然后进入BASE目录运行gnumake(如果之前有编译过,最好先gnumake clean uninstall,然后gnumake)

4、启动IOC。建立任意目录test
perl  e:/epics/base-3.14.5/win32-x86/makeBaseApp.pl -t example testapp
perl  e:/epics/base-3.14.5/win32-x86/makeBaseApp.pl -i -t example testapp
将  /test/bin/win32-x86 加入path
在 test目录里运行gnumake
编译成功后进入/test/iocBoot/iocexample目录下运行 testapp st.cmd就可以启动IOC了
然后运行 dbl  可以看到一些channel的名称。

5、使用JCA。这里我使用的是JCA 2.1.2
解压后,将jca.dll文件的目录地址添加到PATH
将jca.jar文件添加到classpath
修改jca.jar文件gov.aps.jca里的JCALibrary.properties
修改如下两项
gov.aps.jca.jni.epics.win32-x86.caRepeater.path=E:/epics/base-3.14.5/bin/win32-x86
gov.aps.jca.jni.epics.win32-x86.library.path=E:/epics/base-3.14.5/bin/win32-x86
注意红色部分,在linux下相应的改成linux-x86
将JCALibrary.properties复制到D:/Program Files/Java/jdk1.5.0_08/jre/lib

现在就可以使用JCA来编写java程序了

注:由于环境变量的信息全部写在win32.bat里,所以每次重新启动cmd的时候,运行win32.bat,环境变量设置才生效。

<think>好的,用户的问题是关于在CentOS 7上安装EPICS Base 3.15.6并创建IOC实例的指南。我需要先整理已有的信息,再结合提供的引用资料来构建一个清晰的步骤指南。 首先,用户提供的引用内容提到了安装EPICS Base需要一些依赖,比如readline-devel,其他可能已经包含在基本开发工具中。所以第一步应该是安装这些依赖项。需要确认CentOS 7是否已经安装了开发工具组,如果没有的话,可能需要通过yum groupinstall来安装。然后安装readline-devel。 接下来,下载EPICS Base的压缩包,版本3.15.6。用户可能需要从官方网站或镜像获取这个文件。解压后进入目录进行编译,这里需要注意环境变量的设置,特别是EPICS_HOST_ARCH和PATH,确保编译后的可执行文件能被系统找到。 然后是创建IOC实例的步骤。根据引用中的信息,可能需要使用makeBaseApp.pl脚本来生成IOC的基本结构。需要指导用户如何运行这个脚本,并配置启动文件和数据库。可能涉及修改st.cmd文件,设置必要的环境变量,以及构建应用程序。 另外,用户可能对如何启动IOC实例和测试其运行有疑问,所以需要包含启动命令和简单的测试方法,比如使用camonitor或caput等命令来验证IOC是否正常工作。 需要注意的常见问题可能包括依赖项未安装导致编译失败,环境变量设置不正确,或者权限问题。需要提醒用户检查这些方面。此外,可能还需要指导如何将EPICS Base添加到用户的bashrc中,以便每次登录自动加载环境。 最后,生成相关问题时需要考虑用户可能的后续疑问,比如如何配置更复杂的IOC,如何集成硬件支持,或者如何处理依赖的其他软件包。这些问题可以帮助用户进一步深入学习和解决问题。</think>以下是基于引用内容的CentOS 7安装EPICS Base 3.15.6及创建IOC实例的完整指南: ### 一、环境准备 1. 安装基础开发工具 ```bash yum groupinstall "Development Tools" yum install readline-devel ``` *注:readline-devel是EPICS Base的核心依赖项[^2]* ### 二、安装EPICS Base ```bash wget https://epics.anl.gov/download/base/base-3.15.6.tar.gz tar -zxvf base-3.15.6.tar.gz cd base-3.15.6 ``` 配置环境变量: ```bash echo 'export EPICS_BASE=/path/to/base-3.15.6' >> ~/.bashrc echo 'export EPICS_HOST_ARCH=$(${EPICS_BASE}/startup/EpicsHostArch)' >> ~/.bashrc echo 'export PATH=${EPICS_BASE}/bin/${EPICS_HOST_ARCH}:${PATH}' >> ~/.bashrc source ~/.bashrc ``` 编译安装: ```bash make clean make ``` ### 三、创建IOC实例 1. 创建应用目录 ```bash mkdir /opt/epics/myIOC cd /opt/epics/myIOC ``` 2. 生成基础框架 ```bash ${EPICS_BASE}/bin/linux-x86_64/makeBaseApp.pl -t example exampleIOC ${EPICS_BASE}/bin/linux-x86_64/makeBaseApp.pl -i -t example exampleIOC ``` 3. 构建IOC ```bash make ``` ### 四、配置运行IOC 1. 修改启动脚本 ```bash vi iocBoot/iocexample/st.cmd ``` 添加测试记录: ```bash dbLoadRecords("db/dbExample1.db","user=test") ``` 2. 启动IOC ```bash cd iocBoot/iocexample chmod +x st.cmd ./st.cmd ``` ### 五、验证测试 ```bash camonitor test:ai1 ``` 新终端执行: ```bash caput test:ai1 42 ``` 应能看到数值变化响应 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值