Installing EPICS

Download Report

Transcript Installing EPICS

EPICS

EPICS on Windows How to install and Application example with hands-on

Masanori Satoh/ KEK, Jan. 27-30, 2009 for EPICS seminar at RRCAT, Indore Some parts are quoted from Dr. Furukawa’s and Dr. Obina’s lecture materials.

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Why EPICS on Windows

EPICS on Windows Information: http://www.aps.anl.gov/epics/base/win32.php

http://www-linac.kek.jp/jk/win32/ Recently, many devices are running on Windows (2000, XP, Vista) .

Digital oscilloscope (Tektronix, Agilent, LeCroy,…) Network Analyzer Many other measurement instruments etc.

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

EPICS IOC Example in KEK Linac

Tektronix Oscilloscope DPO7104 for BPM-DAQ Agilent Network Analyzer E5061A for Vector voltmeter ( 571 MHz Phase)

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Building EPICS on Windows:

Some possible environments Cygwin Unix-like environment GNU tools cygwin1.dll

Microsoft Visual C++ (VC6, 2005, .NET, 2008) Commercial Free version (Express Edition) MinGW Minimalist GNU for Windows Free GNU C compiler msvcrt.dll (Microsoft C) Borland C++

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Building EPICS on Windows:

The simplest approach: Cygwin with the GCC compiler Recommend: Some Cygwin tools and Microsoft's commercial Visual C++ compiler (or free Visual C++ 2008 Express Edition).

http://www.microsoft.com/express/vc/

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

What’s Cygwin?

Cygwin is a Linux-like environment for Windows. A DLL (cygwin1.dll) which acts as a Linux API emulation layer providing substantial Linux API functionality. A collection of tools which provide Linux look and feel. You can get it http://www.cygwin.com/

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Cygwin Applications

Cygwin API “Cygwin1.dll” provides function of POSIX system call.

Development of Windows-native Application is also Possible Development of DLL is Possible Most of the Open-Source tools on Unix are ported.

Fileutils, XXXutils, Compilers, Debuggers, Editors, Internet Clients, Interpreters, Dev. Tools, Doc. Tools.

Servers Sshd, Apache (php, etc.), Squid, PostgreSQL, Xinetd, NFS,… X11

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

What Is Visual Studio Express?

You can get it.

http://www.microsoft.com/express/download/ Visual C++, Visual Basic, Visual C#, SQL Server, Visual Web Developer.

Freeware Limited functionality But enough for common usage Needs about 1 GB of disk space You don’t need: MS Shilverlight Runtime MS SQL Server

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Visual C++ 2008 GUI

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

Using Cygwin: The simple way to build EPICS on Windows Hits for Cygwin setup: Very slow response for some download sites.

If you failed to download, try from other Websites .

Default install option does not include the important commands: cc, make, perl, etc

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

Install Cygwin:

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

Choose a download site.

If you failed, try from other download sites.

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

Select Packages you want.

At least, select cc, vim, make, Perl, and so on.

X11 is also available if you select.

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

Select Packages: Editors Vim, Emacs,… Devel make gcc-g++, gcc-core Perl Other packages if you need

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (1)

Set EPICS_HOST_ARCH environment var.

bash: export EPICS_HOST_ARCH=cygwin-x86 csh: setenv EPICS_HOST_ARCH cygwin-x86 c.f.) for MinGW, export EPICS_HOST_ARCH=win32-x86-mingw Then, in the base directory Just type “make” Typically, it takes about 10 minutes.

(Intel Core2 1.2 GHz, 2 GB RAM)

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (2)

Cygwin tools and Microsoft's Visual Studio C++ compiler combination.

make, perl (Cygwin) cl, link, (Visual Studio C++) EPICS_HOST_ARCH: bash: export EPICS_HOST_ARCH=win32-x86 csh: setenv EPICS_HOST_ARCH win32-x86 c.f.) for Borland compiler export EPICS_HOST_ARCH=win32-x86-borland

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (2)

EPICS_HOST_ARCH variable: You can set it as the Windows Environment Variable.

“Control Panel” => “System” => “System Property” => “Environment Variables” => “System variables”

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (2)

You can find cygwin.bat file in c:\cygwin (default setting) or root directory you choosed.

In cygwin.bat file, add one line.

@echo off C: chdir C:\cygwin\bin call "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat“ bash --login -i

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to Build EPICS on Windows (2)

Modify /etc/profile file PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:$PATH export PATH => PATH= $PATH :/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin export PATH You can check the path setting by “which” command.

$ which link /cygdrive/c/Program Files/Microsoft Visual Studio 8/VC/BIN/link $ which cl /cygdrive/c/Program Files/Microsoft Visual Studio 8/VC/BIN/cl

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Hands-on (1)

Build EPICS base on Windows Use Cygwin export EPICS_HOST_ARCH=cygwin-x86 Use Visual Studio C++ and Cygwin(make, perl) export EPICS_HOST_ARCH=win32-x86 Modify the /etc/profile file PATH= $PATH :/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Hands-on (2)

Open a Cygwin command window Check environment printenv printenv |grep EPICS make –v perl –v cl

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Hands-on (3)

Create an Example Application on Windows /home/username>mkdir testApp /home/username>cd testApp /home/username/testApp>makeBaseApp.pl -t example myexample /home/username/testApp>makeBaseApp.pl -i -t example myexample /home/username/testApp>make ..... wait for a while .....

/home/username/testApp>cd iocBoot\iocmyexample /home/username/testApp/iocBoot/iocmyexample>vi st.cmd

..... edit "st.cmd" .....

dbLoadRecords("db/dbExample1.db","user=username") dbLoadRecords("db/dbExample1.db","user= x86/example.exe st.cmd

your_favorite_name ..... open another cmd window, try caget, camonitor ") /home/username/testApp/iocBoot/iocmyexample>../../bin/win32-

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

Hits for Hands-on (3) Set path configuration

/usr_epics_base_directory/bin/win32-x86 e.g.) /epics/base-3.14.10/bin/win32-x86 Modify .bashrc (bash), .cshrc (csh) Or, Modify Environment Variables on Windows

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.

EPICS

How to use CA.DLL

Dynamic-Link Library (DLL) Microsoft’s implementation of the shared library concept in the Windows operating systems *.so (In Linux or other UNIX-like operating system) Example: caClient by VBA macro V isual B asic for A pplication In KEK Linac, VBA is used for E5061A(Agilent) for Vector voltmeter.

EPICS Seminar 2009, RRCAT, Indor Masanori Satoh, KEK Linac, Jan. 2009.