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

Subject: Re: Building modbus 3-4 on rhel-9 epics 3.15.9
From: "Johnson, Andrew N. via Tech-talk" <[email protected]>
To: Sue Witherspoon <[email protected]>, "[email protected]" <[email protected]>
Date: Thu, 28 Aug 2025 21:41:48 +0000
Hi Sue,

Those apparently-missing osd*.h header files should be present in your directory
      /usr/dvlepics/epics/R3.15.9.J0/include/os/Linux
directory, but the g++ and gcc commands you showed are being told to look for them in the directory
      /usr/dvlepics/epics/R3.15.9.J0/include/os/
instead, so there’s something wrong with the $(OS_CLASS) value for your host architecture, it should be getting set to Linux in your
      /usr/dvlepics/epics/R3.15.9.J0/configure/os/CONFIG.Common.$EPICS_HOST_ARCH
file.

Have you defined your own host architecture and added files to Base to support it?

I hope this gives you some pointers where to look.

- Andrew


-- 

Complexity comes for free, Simplicity you have to work for.


On 8/28/25, 4:25 PM, "Tech-talk" <[email protected]> wrote:

Apologies in advance for what I think is an old issue, but I seem to be missing something.
I am trying to make modbus-R3-4 on a rhel-9 server. I got the src from the github.com/epics-modules/modbus/tree/R3-4

/usr/bin/g++          -DUSE_TYPED_RSET        -O3   -Wall            -I. -I../O.Common -I. -I. -I.. -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/compiler/gcc -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/os/ -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include                  -I/cs/op/prod_R3.15.9.J0/asyn/4-45/include -I/usr/dvlepics/epics/R3.15.9.J0/include/compiler/gcc -I/usr/dvlepics/epics/R3.15.9.J0/include/os/ -I/usr/dvlepics/epics/R3.15.9.J0/include        -MM -MF testModbusSyncIO.d  ../testModbusSyncIO.cpp
In file included from /usr/dvlepics/epics/R3.15.9.J0/include/epicsThread.h:130,
                 from ../testModbusSyncIO.cpp:15:
/usr/dvlepics/epics/R3.15.9.J0/include/epicsEvent.h:78:10: fatal error: osdEvent.h: No such file or directory
   78 | #include "osdEvent.h"
      |          ^~~~~~~~~~~~
compilation terminated.
/usr/bin/gcc          -DUSE_TYPED_RSET        -O3   -Wall    -DUSE_TYPED_RSET        -I. -I../O.Common -I. -I. -I.. -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/compiler/gcc -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/os/ -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include                  -I/cs/op/prod_R3.15.9.J0/asyn/4-45/include -I/usr/dvlepics/epics/R3.15.9.J0/include/compiler/gcc -I/usr/dvlepics/epics/R3.15.9.J0/include/os/ -I/usr/dvlepics/epics/R3.15.9.J0/include        -MM -MF modbusInterpose.d  ../modbusInterpose.c
In file included from ../modbusInterpose.c:23:
/usr/dvlepics/epics/R3.15.9.J0/include/osiSock.h:19:10: fatal error: osdSock.h: No such file or directory
   19 | #include "osdSock.h"
      |          ^~~~~~~~~~~
compilation terminated.
/usr/bin/g++          -DUSE_TYPED_RSET        -O3   -Wall            -I. -I../O.Common -I. -I. -I.. -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/compiler/gcc -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/os/ -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include                  -I/cs/op/prod_R3.15.9.J0/asyn/4-45/include -I/usr/dvlepics/epics/R3.15.9.J0/include/compiler/gcc -I/usr/dvlepics/epics/R3.15.9.J0/include/os/ -I/usr/dvlepics/epics/R3.15.9.J0/include        -MM -MF drvModbusAsyn.d  ../drvModbusAsyn.cpp
In file included from /usr/dvlepics/epics/R3.15.9.J0/include/dbAccess.h:15,
                 from ../drvModbusAsyn.cpp:23:
/usr/dvlepics/epics/R3.15.9.J0/include/epicsTime.h:19:10: fatal error: osdTime.h: No such file or directory
   19 | #include "osdTime.h"
      |          ^~~~~~~~~~~
compilation terminated.
/usr/bin/g++          -DUSE_TYPED_RSET        -O3   -Wall            -I. -I../O.Common -I. -I. -I.. -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/compiler/gcc -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/os/ -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include                  -I/cs/op/prod_R3.15.9.J0/asyn/4-45/include -I/usr/dvlepics/epics/R3.15.9.J0/include/compiler/gcc -I/usr/dvlepics/epics/R3.15.9.J0/include/os/ -I/usr/dvlepics/epics/R3.15.9.J0/include        -MM -MF testModbusSyncIO.d  ../testModbusSyncIO.cpp
In file included from /usr/dvlepics/epics/R3.15.9.J0/include/epicsThread.h:130,
                 from ../testModbusSyncIO.cpp:15:
/usr/dvlepics/epics/R3.15.9.J0/include/epicsEvent.h:78:10: fatal error: osdEvent.h: No such file or directory
   78 | #include "osdEvent.h"
      |          ^~~~~~~~~~~~
compilation terminated.
/usr/bin/gcc          -DUSE_TYPED_RSET        -O3   -Wall    -DUSE_TYPED_RSET        -I. -I../O.Common -I. -I. -I.. -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/compiler/gcc -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/os/ -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include                  -I/cs/op/prod_R3.15.9.J0/asyn/4-45/include -I/usr/dvlepics/epics/R3.15.9.J0/include/compiler/gcc -I/usr/dvlepics/epics/R3.15.9.J0/include/os/ -I/usr/dvlepics/epics/R3.15.9.J0/include        -MM -MF modbusInterpose.d  ../modbusInterpose.c
In file included from ../modbusInterpose.c:23:
/usr/dvlepics/epics/R3.15.9.J0/include/osiSock.h:19:10: fatal error: osdSock.h: No such file or directory
   19 | #include "osdSock.h"
      |          ^~~~~~~~~~~
compilation terminated.
/usr/bin/g++          -DUSE_TYPED_RSET        -O3   -Wall            -I. -I../O.Common -I. -I. -I.. -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/compiler/gcc -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include/os/ -I/cs/op/prod_R3.15.9.J0/modbus/3-4/include                  -I/cs/op/prod_R3.15.9.J0/asyn/4-45/include -I/usr/dvlepics/epics/R3.15.9.J0/include/compiler/gcc -I/usr/dvlepics/epics/R3.15.9.J0/include/os/ -I/usr/dvlepics/epics/R3.15.9.J0/include        -MM -MF drvModbusAsyn.d  ../drvModbusAsyn.cpp
In file included from /usr/dvlepics/epics/R3.15.9.J0/include/dbAccess.h:15,
                 from ../drvModbusAsyn.cpp:23:
/usr/dvlepics/epics/R3.15.9.J0/include/epicsTime.h:19:10: fatal error: osdTime.h: No such file or directory
   19 | #include "osdTime.h"
      |          ^~~~~~~~~~~
compilation terminated.

Is there a particular FLAG and define that will mitigate this problem with osdTime, osdSock, osdEvent  etc. ?
-Thanks in advance
Sue Witherspoon
Controls Software
Jefferson Lab

References:
Building modbus 3-4 on rhel-9 epics 3.15.9 Sue Witherspoon via Tech-talk

Navigate by Date:
Prev: Building modbus 3-4 on rhel-9 epics 3.15.9 Sue Witherspoon via Tech-talk
Next: RE: Building modbus 3-4 on rhel-9 epics 3.15.9 Mark Rivers 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  <20252026 
Navigate by Thread:
Prev: Building modbus 3-4 on rhel-9 epics 3.15.9 Sue Witherspoon via Tech-talk
Next: RE: Building modbus 3-4 on rhel-9 epics 3.15.9 Mark Rivers 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  <20252026 
ANJ, 19 Mar 2026 · Home · News · About · Talk · Base · Modules · Extensions ·
· Distributions · Download · Documents · Links · Licensing ·