Hi Matias,
I would recommend installing EPICS base with a git clone, rather than from Conda. Then you have the full installation with RULES, test programs, etc.
-
- had to guess a bit where to put EPICS_BASE directory in various configure/RULES etc
You should only edit [module]/configure/RELEASE
-
Define the location of EPICS_BASE for all modules
-
Define the path to the sequencer for asyn and motor
-
Define the path to asyn for motor
-
- had to install "sun rpc" on my system, and "re2c" from conda-forge (if I remember correctly)
Depending on the version of Linux that is now typically tirpc, e.g. package libtirpc-devel on RHEL 9.
-
- at the end I had to manually copy the include, lib, bin, dbd, db files ; is it the normal way ?
No, that is not normal. If things are installed correctly “make” will do all of that for you.
Mark
From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of Guijarro Mathias Charles via Tech-talk
Sent: Tuesday, September 17, 2024 9:37 AM
To: tech-talk at aps.anl.gov
Subject: New to EPICS - wants to use motorMotorSim - Python client
I am new to EPICS. I would like to run a motor simulation driver (or is it IOC ? Or "server", well something I can use
to connect to, that would simulate the behaviour of a motor), and to test it with Python.
I do not want to try with Docker, as I prefer to have individual processes running locally, to learn about the
Here is what I did so far:
- made a new Conda environment
- installed Epics from Conda , to have EPICS_BASE in $CONDA_PREFIX/epics
- cloned submodule "motorMotorSim"
- compiled all those (first asyn, then sequencer, then motor)
- had to guess a bit where to put EPICS_BASE directory in various configure/RULES etc
- had to install "sun rpc" on my system, and "re2c" from conda-forge (if I remember correctly)
- at the end I had to manually copy the include, lib, bin, dbd, db files ; is it the normal way ?
- I managed to set IOCS to True to have IOC compiled
So now I have 4 executables with the same name:
./motor/bin/linux-x86_64/motorSim
./motor/modules/motorMotorSim/iocs/motorSimIOC/bin/linux-x86_64/motorSim
./motor/modules/motorMotorSim/iocs/motorSimIOC/motorSimApp/src/O.linux-x86_64/motorSim
./motor/modules/motorMotorSim/motorSimApp/src/O.linux-x86_64/motorSim
They are different (not the same md5sum).
Running any of those gives me an "epics>" prompt.
What should I do, to run it to be able to test something with a Python client ? Or at least with caput/caget ?
How to configure it (limits, velocity, etc) ?
I could not find any guide for this on internet, or at least it was not as easy as I thought... So I prefer
to ask in order to get the "minimum viable information".
Later on I will try to run other simulated devices probably... So better to learn about the system "the hard
Any help would be appreciated.