EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <2025 Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <2025
<== Date ==> <== Thread ==>

Subject: Re: More Issues Installing Galil EPICS Drivers – asyn
From: Érico Nogueira Rolim via Tech-talk <tech-talk at aps.anl.gov>
To: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Tue, 11 Mar 2025 15:01:18 +0000
Hi Jonathan, I am responding inline.

On 11/03/2025 11:49, Jonathan Hai via Tech-talk wrote:
Dear EPICS Tech-Talk Community,
I am in the process of setting up EPICS support for Galil motor controllers, but I have encountered persistent issues with rebuilding asyn that are preventing me from completing the installation. I would greatly appreciate any guidance in resolving this.

Background
I am rebuilding asyn because I previously ran into linker errors while compiling busy and Galil, related to missing RPC symbols (xdr_bytes, clnt_sperror, etc.). The solution to this issue, as suggested in previous discussions, was to ensure that asyn properly links against libtirpc (since some Linux distributions no longer include these symbols in glibc).
After adding the required libtirpc configurations and reinstalling dependencies, I attempted to rebuild asyn from scratch. However, the build process does not appear to generate libasyn.so at all.

Current Issue
  • After running a full rebuild of asyn, the lib/linux-x86_64/ directory remains empty (total 0).
  • I am encountering this error during the build process:
make[2]: *** No rule to make target '../../lib/linux-x86_64/libtirpc.a', needed by 'libasyn.so'.  Stop.
make[2]: Leaving directory '/home/jonathanhai/support/asyn-R4-45/asyn/O.linux-x86_64'
make[1]: *** [/home/jonathanhai/epics-base/configure/RULES_ARCHS:58: install.linux-x86_64] Error 2
make[1]: Leaving directory '/home/jonathanhai/support/asyn-R4-45/asyn'
make: *** [/home/jonathanhai/epics-base/configure/RULES_DIRS:85: asyn.install] Error 2
  • Running:
    ls -l ~/support/asyn-R4-45/lib/linux-x86_64/
    shows no files (no .so or .a libraries).
  • Checking the dependencies:
    ldd ~/support/asyn-R4-45/lib/linux-x86_64/libasyn.so | grep tirpc
    returns:
    ldd: ~/support/asyn-R4-45/lib/linux-x86_64/libasyn.so: No such file or directory
    indicating that the shared library is not being created at all.

What I Have Tried
  1. Ensured libtirpc is installed and available:
    find /usr -name "libtirpc.so*"
    Output:
    /usr/lib/x86_64-linux-gnu/libtirpc.so /usr/lib/x86_64-linux-gnu/libtirpc.so.3 /usr/lib/x86_64-linux-gnu/libtirpc.so.3.0.0
    • ✅ Confirms libtirpc.so exists on my system.
  2. Added the following to asyn/configure/CONFIG_SITE:
    TIRPC=YES USR_LIBS += tirpc USR_LDFLAGS += -L/usr/lib/x86_64-linux-gnu -ltirpc USR_CFLAGS += -I/usr/include/tirpc


All of these USR_* options should be removed.


  1. SHARED_LIBRARIES=YES STATIC_BUILD=NO
  2. Performed a full asyn rebuild:
    cd ~/support/asyn-R4-45 make realclean make USR_LDFLAGS="-L/usr/lib/x86_64-linux-gnu -ltirpc"


This make command shouldn't define USR_LDFLAGS either.


The TIRPC option already does all of this setup, it might only require further options if the library is located somewhere non-standard (not the case for you).


Using USR_LIBS causes the EPICS build system to search for the library as if it were an EPICS module, and that obviously fails; the last thing it tries is to find a static library in your current build, which causes the error message you saw. In such cases, the correct option is *_SYS_LIBS, because system libraries are treated differently. Either way, you *shouldn't manually specify anything related to libtirpc beyond TIRPC=YES*.


    • ❌ Still no libasyn.so is created.
  1. Checked for errors in the build process:
    grep -i "error" asyn_build.log
    • No major compilation errors, but libasyn.so is still missing.
  2. Attempted to force shared library creation by modifying asynApp/Makefile:
    SHARED_LIBRARIES = YES STATIC_BUILD = NO
    • Rebuilt again → Still no libasyn.so.
  3. Manually created a symbolic link to libtirpc.so inside asyn/lib/linux-x86_64/:
    cd ~/support/asyn/lib/linux-x86_64 ln -s /usr/lib/x86_64-linux-gnu/libtirpc.so libtirpc.a
    • Rebuilt again → Still no libasyn.so.

Questions
  1. Why is asyn not producing libasyn.so at all?
    • Is there a missing dependency or configuration preventing shared library creation?
  2. Are there specific asyn settings that need to be adjusted to force libasyn.so compilation?
  3. Has anyone successfully built asyn with libtirpc support on a recent Linux distribution (e.g., Ubuntu 22.04, Debian 11)?
    • If so, what specific settings were required?
  4. Should I try an older version of asyn or epics-base?
    • My current setup uses EPICS Base 7.0.9 and asyn-R4-45.
    • I know that my setup should work, as a member of this community kindly let me know that they ran nearly the exact same setup with positive results.

System Information
  • OS: Ubuntu 24.04
  • EPICS Base Version: 7.0.9
  • asyn Version: R4-45
  • TIRPC Installed: Yes (/usr/lib/x86_64-linux-gnu/libtirpc.so exists)

Final Notes
I have been troubleshooting this issue extensively, and I would really appreciate any guidance or suggestions from the community. If anyone has encountered this issue before and found a working solution, I would love to hear how you resolved it.
Thanks in advance for your help!

Jonathan Hai

Researcher/Tech Monkey

CNBL | Department of Physics and Astronomy

McMaster University

Sapere Aude



From: Saleh, Ibrahim <saleh at bnl.gov>
Sent: Monday, March 10, 2025 3:14 PM
To: Mark Rivers <rivers at cars.uchicago.edu>; Jonathan Hai <haic at mcmaster.ca>
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building
 

You don't often get email from saleh at bnl.gov. Learn why this is important


Caution: External email.

Hi Mark and Jonathan,

 

I know that “re2c” package is required by the sequencer. I ‘m not sure if it is needed on Ubuntu or not.

 

Regards,

Ibrahim

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Mark Rivers via Tech-talk
Sent: Monday, March 10, 2025 2:35 PM
To: Jonathan Hai <haic at mcmaster.ca>
Cc: tech-talk at aps.anl.gov
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Hi Jonathan,

 

Last week I successfully built base 7.0.9, asyn, seq, sscan, and Galil on an Ubuntu system with those same specs.

 

Mark

 

 

 

From: Jonathan Hai <haic at mcmaster.ca>
Sent: Monday, March 10, 2025 12:50 PM
To: Mark Rivers <
rivers at cars.uchicago.edu>
Subject: Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Hi Mark,

 

Yes, I did move my support directory to be out of epics-base. It fixed the problem!

 

Here are my specs:

 

  • Ubuntu 24.04
  • EPICS 7.0.9
  • GCC 13.3.0

 

Could these be causing any problems?

 

 

Jonathan Hai

Researcher/Tech Monkey

CNBL | Department of Physics and Astronomy

McMaster University

Sapere Aude

 

 

 


From: Mark Rivers <rivers at cars.uchicago.edu>
Sent: Monday, March 10, 2025 1:47 PM
To: Jonathan Hai <
haic at mcmaster.ca>; tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 


You don't often get email from rivers at cars.uchicago.edu. Learn why this is important



Caution: External email.

 

Hi Jonathon,

 

What version of EPICS base are you using?  Have you modified anything in it?

 

Last week you reported a problem building asyn.  I could not reproduce your problem, and then Andrew Johnson suggested that you move support/ so it was not under EPICS base.  Did you do that, and did it fix your problem? 

 

I am not aware of anyone else reporting a problem with lexer, so there must be something different with your installation.  Is this Ubuntu 22?  I built base successfully on that last week, including seq and sscan with base 7.0.9.

 

Mark

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Jonathan Hai via Tech-talk
Sent: Monday, March 10, 2025 12:39 PM
To: tech-talk at aps.anl.gov
Subject: Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Subject: Follow-up: Issues Installing Galil EPICS Drivers – seq & sscan Still Not Building

Hi Kasemir,

I appreciate the help so far regarding my Galil motor driver installation issues. I've followed the advice given and have attempted multiple fixes, but I’m still unable to get the required dependencies (seq and sscan) to build.

Recap of the Issue

  1. I need to install the Galil motor drivers, but the build fails because sscan does not compile.
  2. sscan fails because scanProg.o is missing, which (I believe) needs seq to be installed.
  3. seq fails to build due to a missing lexer.c, which should be generated from lexer.l by e_flex.
  4. e_flex is broken on my system, preventing lexer.c from being created.

Steps I Have Taken So Far

1. Verified e_flex and antelope Exist in EPICS Base

  • Both e_flex and antelope are present in /home/jonathanhai/epics-base/bin/linux-x86_64/.
  • Running antelope --version works, but running e_flex --help produces an error:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: unknown flag '-'

2. Checked for lexer.l in seq

  • lexer.l is present in /home/jonathanhai/support/seq/src/snc/, but running e_flex fails with:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: could not create
  • Running e_flex manually gives:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: can't open skeleton file DEFAULT_SKELETON_FILE

3. Checked for flex.skl (Skeleton File Required by e_flex)

  • Running:
·         find ~/epics-base -name "flex.skl"

returns no results, meaning this file is missing.

·         /home/jonathanhai/epics-base/configure/os/Linux/flex.skl: No such file or directory

4. Installed System flex and bison as an Alternative

  • Installed via:
·         sudo apt install flex bison
    • flex version: 2.6.4
    • bison version: 3.8.2
  • Tried running system flex manually:
·         cd ~/support/seq/src/snc
·         flex -o lexer.c lexer.l
    • Error:
o    lexer.l:1: premature EOF

5. Rebuilt EPICS Base

  • Ran a full rebuild:
·         cd ~/epics-base
·         make clean
·         make
  • No change, e_flex still does not work.

Current Issues & Questions

  1. Why is e_flex broken?
    • It fails with "unknown flag '-'" when run manually.
    • It also reports "can't open skeleton file DEFAULT_SKELETON_FILE" when used.
    • Should I be specifying a FLEX_SKEL environment variable?
  1. Why is lexer.l failing with "premature EOF" when running flex?
    • Could lexer.l be corrupted or incomplete?
    • If so, can I manually download a working version?
  2. Is there a way to bypass e_flex and manually create lexer.c?
    • If I download a pre-generated lexer.c, will the build proceed?
  3. Would switching to an older version of seq help?
    • If so, which version would you recommend?

I really appreciate any further guidance on this! Thanks again for your time.

 

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 

 


From: Mark Rivers <rivers at cars.uchicago.edu>
Sent: Monday, March 10, 2025 1:47 PM
To: Jonathan Hai <
haic at mcmaster.ca>; tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 


You don't often get email from rivers at cars.uchicago.edu. Learn why this is important



Caution: External email.

 

Hi Jonathon,

 

What version of EPICS base are you using?  Have you modified anything in it?

 

Last week you reported a problem building asyn.  I could not reproduce your problem, and then Andrew Johnson suggested that you move support/ so it was not under EPICS base.  Did you do that, and did it fix your problem? 

 

I am not aware of anyone else reporting a problem with lexer, so there must be something different with your installation.  Is this Ubuntu 22?  I built base successfully on that last week, including seq and sscan with base 7.0.9.

 

Mark

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Jonathan Hai via Tech-talk
Sent: Monday, March 10, 2025 12:39 PM
To: tech-talk at aps.anl.gov
Subject: Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Subject: Follow-up: Issues Installing Galil EPICS Drivers – seq & sscan Still Not Building

Hi Kasemir,

I appreciate the help so far regarding my Galil motor driver installation issues. I've followed the advice given and have attempted multiple fixes, but I’m still unable to get the required dependencies (seq and sscan) to build.

Recap of the Issue

  1. I need to install the Galil motor drivers, but the build fails because sscan does not compile.
  2. sscan fails because scanProg.o is missing, which (I believe) needs seq to be installed.
  3. seq fails to build due to a missing lexer.c, which should be generated from lexer.l by e_flex.
  4. e_flex is broken on my system, preventing lexer.c from being created.

Steps I Have Taken So Far

1. Verified e_flex and antelope Exist in EPICS Base

  • Both e_flex and antelope are present in /home/jonathanhai/epics-base/bin/linux-x86_64/.
  • Running antelope --version works, but running e_flex --help produces an error:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: unknown flag '-'

2. Checked for lexer.l in seq

  • lexer.l is present in /home/jonathanhai/support/seq/src/snc/, but running e_flex fails with:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: could not create
  • Running e_flex manually gives:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: can't open skeleton file DEFAULT_SKELETON_FILE

3. Checked for flex.skl (Skeleton File Required by e_flex)

  • Running:
·         find ~/epics-base -name "flex.skl"

returns no results, meaning this file is missing.

·         /home/jonathanhai/epics-base/configure/os/Linux/flex.skl: No such file or directory

4. Installed System flex and bison as an Alternative

  • Installed via:
·         sudo apt install flex bison
    • flex version: 2.6.4
    • bison version: 3.8.2
  • Tried running system flex manually:
·         cd ~/support/seq/src/snc
·         flex -o lexer.c lexer.l
    • Error:
o    lexer.l:1: premature EOF

5. Rebuilt EPICS Base

  • Ran a full rebuild:
·         cd ~/epics-base
·         make clean
·         make
  • No change, e_flex still does not work.

Current Issues & Questions

  1. Why is e_flex broken?
    • It fails with "unknown flag '-'" when run manually.
    • It also reports "can't open skeleton file DEFAULT_SKELETON_FILE" when used.
    • Should I be specifying a FLEX_SKEL environment variable?
  1. Why is lexer.l failing with "premature EOF" when running flex?
    • Could lexer.l be corrupted or incomplete?
    • If so, can I manually download a working version?
  2. Is there a way to bypass e_flex and manually create lexer.c?
    • If I download a pre-generated lexer.c, will the build proceed?
  3. Would switching to an older version of seq help?
    • If so, which version would you recommend?

I really appreciate any further guidance on this! Thanks again for your time.

 

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 



From: Saleh, Ibrahim <saleh at bnl.gov>
Sent: Monday, March 10, 2025 3:14 PM
To: Mark Rivers <rivers at cars.uchicago.edu>; Jonathan Hai <haic at mcmaster.ca>
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building
 

You don't often get email from saleh at bnl.gov. Learn why this is important


Caution: External email.

Hi Mark and Jonathan,

 

I know that “re2c” package is required by the sequencer. I ‘m not sure if it is needed on Ubuntu or not.

 

Regards,

Ibrahim

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Mark Rivers via Tech-talk
Sent: Monday, March 10, 2025 2:35 PM
To: Jonathan Hai <haic at mcmaster.ca>
Cc: tech-talk at aps.anl.gov
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Hi Jonathan,

 

Last week I successfully built base 7.0.9, asyn, seq, sscan, and Galil on an Ubuntu system with those same specs.

 

Mark

 

 

 

From: Jonathan Hai <haic at mcmaster.ca>
Sent: Monday, March 10, 2025 12:50 PM
To: Mark Rivers <
rivers at cars.uchicago.edu>
Subject: Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Hi Mark,

 

Yes, I did move my support directory to be out of epics-base. It fixed the problem!

 

Here are my specs:

 

  • Ubuntu 24.04
  • EPICS 7.0.9
  • GCC 13.3.0

 

Could these be causing any problems?

 

 

Jonathan Hai

Researcher/Tech Monkey

CNBL | Department of Physics and Astronomy

McMaster University

Sapere Aude

 

 

 


From: Mark Rivers <rivers at cars.uchicago.edu>
Sent: Monday, March 10, 2025 1:47 PM
To: Jonathan Hai <
haic at mcmaster.ca>; tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 


You don't often get email from rivers at cars.uchicago.edu. Learn why this is important



Caution: External email.

 

Hi Jonathon,

 

What version of EPICS base are you using?  Have you modified anything in it?

 

Last week you reported a problem building asyn.  I could not reproduce your problem, and then Andrew Johnson suggested that you move support/ so it was not under EPICS base.  Did you do that, and did it fix your problem? 

 

I am not aware of anyone else reporting a problem with lexer, so there must be something different with your installation.  Is this Ubuntu 22?  I built base successfully on that last week, including seq and sscan with base 7.0.9.

 

Mark

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Jonathan Hai via Tech-talk
Sent: Monday, March 10, 2025 12:39 PM
To: tech-talk at aps.anl.gov
Subject: Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Subject: Follow-up: Issues Installing Galil EPICS Drivers – seq & sscan Still Not Building

Hi Kasemir,

I appreciate the help so far regarding my Galil motor driver installation issues. I've followed the advice given and have attempted multiple fixes, but I’m still unable to get the required dependencies (seq and sscan) to build.

Recap of the Issue

  1. I need to install the Galil motor drivers, but the build fails because sscan does not compile.
  2. sscan fails because scanProg.o is missing, which (I believe) needs seq to be installed.
  3. seq fails to build due to a missing lexer.c, which should be generated from lexer.l by e_flex.
  4. e_flex is broken on my system, preventing lexer.c from being created.

Steps I Have Taken So Far

1. Verified e_flex and antelope Exist in EPICS Base

  • Both e_flex and antelope are present in /home/jonathanhai/epics-base/bin/linux-x86_64/.
  • Running antelope --version works, but running e_flex --help produces an error:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: unknown flag '-'

2. Checked for lexer.l in seq

  • lexer.l is present in /home/jonathanhai/support/seq/src/snc/, but running e_flex fails with:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: could not create
  • Running e_flex manually gives:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: can't open skeleton file DEFAULT_SKELETON_FILE

3. Checked for flex.skl (Skeleton File Required by e_flex)

  • Running:
·         find ~/epics-base -name "flex.skl"

returns no results, meaning this file is missing.

·         /home/jonathanhai/epics-base/configure/os/Linux/flex.skl: No such file or directory

4. Installed System flex and bison as an Alternative

  • Installed via:
·         sudo apt install flex bison
    • flex version: 2.6.4
    • bison version: 3.8.2
  • Tried running system flex manually:
·         cd ~/support/seq/src/snc
·         flex -o lexer.c lexer.l
    • Error:
o    lexer.l:1: premature EOF

5. Rebuilt EPICS Base

  • Ran a full rebuild:
·         cd ~/epics-base
·         make clean
·         make
  • No change, e_flex still does not work.

Current Issues & Questions

  1. Why is e_flex broken?
    • It fails with "unknown flag '-'" when run manually.
    • It also reports "can't open skeleton file DEFAULT_SKELETON_FILE" when used.
    • Should I be specifying a FLEX_SKEL environment variable?
  1. Why is lexer.l failing with "premature EOF" when running flex?
    • Could lexer.l be corrupted or incomplete?
    • If so, can I manually download a working version?
  2. Is there a way to bypass e_flex and manually create lexer.c?
    • If I download a pre-generated lexer.c, will the build proceed?
  3. Would switching to an older version of seq help?
    • If so, which version would you recommend?

I really appreciate any further guidance on this! Thanks again for your time.

 

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 

 


From: Mark Rivers <rivers at cars.uchicago.edu>
Sent: Monday, March 10, 2025 1:47 PM
To: Jonathan Hai <
haic at mcmaster.ca>; tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 


You don't often get email from rivers at cars.uchicago.edu. Learn why this is important



Caution: External email.

 

Hi Jonathon,

 

What version of EPICS base are you using?  Have you modified anything in it?

 

Last week you reported a problem building asyn.  I could not reproduce your problem, and then Andrew Johnson suggested that you move support/ so it was not under EPICS base.  Did you do that, and did it fix your problem? 

 

I am not aware of anyone else reporting a problem with lexer, so there must be something different with your installation.  Is this Ubuntu 22?  I built base successfully on that last week, including seq and sscan with base 7.0.9.

 

Mark

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Jonathan Hai via Tech-talk
Sent: Monday, March 10, 2025 12:39 PM
To: tech-talk at aps.anl.gov
Subject: Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building

 

Subject: Follow-up: Issues Installing Galil EPICS Drivers – seq & sscan Still Not Building

Hi Kasemir,

I appreciate the help so far regarding my Galil motor driver installation issues. I've followed the advice given and have attempted multiple fixes, but I’m still unable to get the required dependencies (seq and sscan) to build.

Recap of the Issue

  1. I need to install the Galil motor drivers, but the build fails because sscan does not compile.
  2. sscan fails because scanProg.o is missing, which (I believe) needs seq to be installed.
  3. seq fails to build due to a missing lexer.c, which should be generated from lexer.l by e_flex.
  4. e_flex is broken on my system, preventing lexer.c from being created.

Steps I Have Taken So Far

1. Verified e_flex and antelope Exist in EPICS Base

  • Both e_flex and antelope are present in /home/jonathanhai/epics-base/bin/linux-x86_64/.
  • Running antelope --version works, but running e_flex --help produces an error:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: unknown flag '-'

2. Checked for lexer.l in seq

  • lexer.l is present in /home/jonathanhai/support/seq/src/snc/, but running e_flex fails with:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: could not create
  • Running e_flex manually gives:
·         /home/jonathanhai/epics-base/bin/linux-x86_64/e_flex: can't open skeleton file DEFAULT_SKELETON_FILE

3. Checked for flex.skl (Skeleton File Required by e_flex)

  • Running:
·         find ~/epics-base -name "flex.skl"

returns no results, meaning this file is missing.

·         /home/jonathanhai/epics-base/configure/os/Linux/flex.skl: No such file or directory

4. Installed System flex and bison as an Alternative

  • Installed via:
·         sudo apt install flex bison
    • flex version: 2.6.4
    • bison version: 3.8.2
  • Tried running system flex manually:
·         cd ~/support/seq/src/snc
·         flex -o lexer.c lexer.l
    • Error:
o    lexer.l:1: premature EOF

5. Rebuilt EPICS Base

  • Ran a full rebuild:
·         cd ~/epics-base
·         make clean
·         make
  • No change, e_flex still does not work.

Current Issues & Questions

  1. Why is e_flex broken?
    • It fails with "unknown flag '-'" when run manually.
    • It also reports "can't open skeleton file DEFAULT_SKELETON_FILE" when used.
    • Should I be specifying a FLEX_SKEL environment variable?
  1. Why is lexer.l failing with "premature EOF" when running flex?
    • Could lexer.l be corrupted or incomplete?
    • If so, can I manually download a working version?
  2. Is there a way to bypass e_flex and manually create lexer.c?
    • If I download a pre-generated lexer.c, will the build proceed?
  3. Would switching to an older version of seq help?
    • If so, which version would you recommend?

I really appreciate any further guidance on this! Thanks again for your time.

 

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 

 



You don't often get email from kasemirk at ornl.gov. Learn why this is important



Caution: External email.

 

When you build epics base, that generates base/bin/…./antelope and e_flex, so basically yacc and (f)lex.

Do you have the base/bin/HOST_ARCH folder on your PATH?

Then it should find those when building the other modules

 



Aviso Legal: Esta mensagem e seus anexos podem conter informações confidenciais e/ou de uso restrito. Observe atentamente seu conteúdo e considere eventual consulta ao remetente antes de copiá-la, divulgá-la ou distribuí-la. Se você recebeu esta mensagem por engano, por favor avise o remetente e apague-a imediatamente.

Disclaimer: This email and its attachments may contain confidential and/or privileged information. Observe its content carefully and consider possible querying to the sender before copying, disclosing or distributing it. If you have received this email by mistake, please notify the sender and delete it immediately.


References:
Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building Jonathan Hai via Tech-talk
Re: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building Jonathan Hai via Tech-talk
RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building Mark Rivers via Tech-talk
RE: Issues Installing Galil EPICS Drivers – sscan & seq Dependencies Not Building Mark Rivers via Tech-talk
More Issues Installing Galil EPICS Drivers – asyn Jonathan Hai via Tech-talk

Navigate by Date:
Prev: More Issues Installing Galil EPICS Drivers – asyn Jonathan Hai via Tech-talk
Next: Image Acquisition Issue with AreaDetector/ADAravis Wang, SuYin Grass via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <2025
Navigate by Thread:
Prev: More Issues Installing Galil EPICS Drivers – asyn Jonathan Hai via Tech-talk
Next: [CSS/Phoebus] Adding widgets as children to other widgets, from Python Gonzalez, Jose Carlos via Tech-talk
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  <2025
ANJ, 11 Mar 2025 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions ·
· Download · Search · IRMIS · Talk · Documents · Links · Licensing ·