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  <20242025  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  <20242025 
<== Date ==> <== Thread ==>

Subject: Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS
From: Érico Nogueira Rolim via Tech-talk <tech-talk at aps.anl.gov>
To: Mark Rivers <rivers at cars.uchicago.edu>, "Johnson, Andrew N." <anj at anl.gov>, Maren Purves <m.purves at eaobservatory.org>, "shenzb at ihep.ac.cn" <shenzb at ihep.ac.cn>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Mon, 23 Dec 2024 14:47:45 +0000
As another option, which we use at Sirius.

When deploying to a legacy environment where containers weren't an (good) option, and developing/building on the deployment environment wasn't possible because we wanted access to more modern C/C++ standards, updated libraries, etc, we used fully statically linked IOCs (instead of linking only EPICS libraries statically).

This doesn't work well on glibc, as has been extensively documented, but it works perfectly well on musl.

This depends on a yet unmerged epics-base PR, to support fully static linking: https://github.com/epics-base/epics-base/pull/413

And we use an Alpine-based container image to actually build the IOCs and package them into tarballs: https://github.com/cnpem/epics-in-docker/?tab=readme-ov-file#building-fully-static-iocs

Cheers,
Érico


De: Tech-talk <tech-talk-bounces at aps.anl.gov> em nome de Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
Enviado: segunda-feira, dezembro 23, 2024 12:50:21 AM
Para: Johnson, Andrew N. <anj at anl.gov>; Maren Purves <m.purves at eaobservatory.org>; shenzb at ihep.ac.cn <shenzb at ihep.ac.cn>
Cc: tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Assunto: Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS

  • Based on the information that you provide, I can only switch to a higher version of the Linux system as the OS in order to use the module I developed. Is my understanding correct?
Yes, if you develop on Ubuntu 22.04.1 then it won't run on CentOS 7.9.  But you do the opposite, develop on CentOS 7.9 and run on Ubuntu 22.04.1 it will normally work.

Mark



From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Zhibang Shen via Tech-talk <tech-talk at aps.anl.gov>
Sent: Sunday, December 22, 2024 9:55 PM
To: Johnson, Andrew N. <anj at anl.gov>; Maren Purves <m.purves at eaobservatory.org>
Cc: tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS
 
Hi,

 

Thank you for your help.


I develop and successfully run my code on Ubuntu 22.04.1 LTS.


The OS of the production environment is CentOS 7.9.


Based on the information that you provide, I can only switch to a higher version of the Linux system as the OS in order to use the module I developed. Is my understanding correct?




Best regards,

Zhibang


-----原始邮件-----
发件人: "Johnson, Andrew N." <anj at anl.gov>
发送时间: 2024-12-21 18:43:53 (星期六)
收件人: "Maren Purves" <m.purves at eaobservatory.org>, "shenzb at ihep.ac.cn" <shenzb at ihep.ac.cn>
抄送: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
主题: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS

Hi,

In a general if you are running different versions of Linux on your systems, you have to compile the software on the oldest OS version that you want to run it on. This isn’t an EPICS restriction, newer GLIBC versions contain compatibility code so that programs compiled against older versions can still run against it, but the reverse can’t be done. Using Maren’s example, building your EPICS code on RHEL-5 should allow the result to also run on RHEL-6 and 7.

HTH,


- Andrew
__ 
Complexity is free, you pay for Simplicity

From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Maren Purves via Tech-talk <tech-talk at aps.anl.gov>
Sent: Saturday, December 21, 2024 3:35:02 AM
To: shenzb at ihep.ac.cn <shenzb at ihep.ac.cn>
Cc: tech-talk at aps.anl.gov <tech-talk at aps.anl.gov>
Subject: Re: Is there a minimum version requirement for glibc and GCC using EPICS
 
What is your operating system (in both systems)?

We (running CentOS5, 6, or 7), on different machines, some of which
probably aren't upgradable) have run into (not EPICS related, this is
for Chrome - none of the CentOS5 machines have Chrome, they're older
processing computers) :

Failed to build transaction:
google-chrome-stable-131.0.6778.204-1.x86_64 requires
libc.so.6(GLIBC_2.25)(64bit)

but installing that libc version would break the operating system on
those machines, so before you install a newer version of libc.so to
what it says you need you would have to check whether that would
require an operating system upgrade or possibly break the current one.

HTH, and aloha,
Maren Purves
Head of Instrument and Telescope Software
East Asian Observatory / JCMT


On Fri, Dec 20, 2024 at 4:59 PM Zhibang Shen via Tech-talk
<tech-talk at aps.anl.gov> wrote:
>
> Hi,
>
>
> I have developed a modbus protocol based motor submodule in my own environment. It is successfully compiled and running without any issue in my development setup.
>
>
> However, while migrating the module to the production environment, we encounter an error of low version library.
>
>
>
> [hp@localhost iocLeadshine]$ ./st.cmd
>
> ../../bin/linux-x86_64/leadshine: /usr/lib64/libc.so.6: version `GLIBC_2.34' not found (required by ../../bin/linux-x86_64/leadshine)
>
>
>
> The libc.so.6 can be found at directory /usr/lib64. It seems to be an issue that the glibc version is too low.
>
>
>
> [hp@localhost iocLeadshine]$ strings /usr/lib64/libc.so.6 | grep GLIBC_
>
> GLIBC_2.0
>
> GLIBC_2.1
>
> GLIBC_2.1.1
>
> GLIBC_2.1.2
>
> GLIBC_2.1.3
>
> GLIBC_2.2
>
> GLIBC_2.2.1
>
> GLIBC_2.2.2
>
> GLIBC_2.2.3
>
> GLIBC_2.2.4
>
> GLIBC_2.2.6
>
> GLIBC_2.3
>
> GLIBC_2.3.2
>
> GLIBC_2.3.3
>
> GLIBC_2.3.4
>
> GLIBC_2.4
>
> GLIBC_2.5
>
> GLIBC_2.6
>
> GLIBC_2.7
>
> GLIBC_2.8
>
> GLIBC_2.9
>
> GLIBC_2.10
>
> GLIBC_2.11
>
> GLIBC_2.12
>
> GLIBC_2.13
>
> GLIBC_2.14
>
> GLIBC_2.15
>
> GLIBC_2.16
>
> GLIBC_2.17
>
> GLIBC_PRIVATE
>
>
>
> Is there a minimum version requirement for glibc when using the synApps/motor package?
>
>
> We tried to compile the glibc from the source. But it is prompted that the gcc version is also not appropriate.
>
>
> As a reference, here are the version of the packages in the production environment.
>
>
> EPICS base 3.15.9
>
> asyn R4-41
>
> seq 2-2-5
>
> busy R1-7
>
> modbus R3-2
>
> motor R7-1
>
>
>
> Best regards,
>
> Zhibang


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:
Is there a minimum version requirement for glibc and GCC using EPICS Zhibang Shen via Tech-talk
Re: Is there a minimum version requirement for glibc and GCC using EPICS Maren Purves via Tech-talk
Re: Is there a minimum version requirement for glibc and GCC using EPICS Johnson, Andrew N. via Tech-talk
Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS Zhibang Shen via Tech-talk
Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS Mark Rivers via Tech-talk

Navigate by Date:
Prev: Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS Mark Rivers via Tech-talk
Next: Job Opportunity at NSLS2 Shroff, Kunal 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  <20242025 
Navigate by Thread:
Prev: Re: [SPAM] Re: Is there a minimum version requirement for glibc and GCC using EPICS Mark Rivers via Tech-talk
Next: Job Opportunity at NSLS2 Shroff, Kunal 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  <20242025 
ANJ, 23 Dec 2024 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions ·
· Download · Search · IRMIS · Talk · Documents · Links · Licensing ·