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  <20212022  2023  2024  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  <20212022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: CentOS8--An error occurred when installing StreamDevice
From: "Johnson, Andrew N. via Tech-talk" <tech-talk at aps.anl.gov>
To: 回忆回眸 <liu1516301092 at foxmail.com>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Thu, 1 Apr 2021 16:46:30 +0000
On Apr 1, 2021, at 1:50 AM, 回忆回眸 wrote:
> 
> Hello, I got the following error when installing StreamDevice:
> Compilation is interrupted.
> /usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -DUSE_TYPED_RSET -DSTREAM_INTERNAL -O3 -Wall -mtune=generic -m64 -fPIC -I. -I../O.Common -I. -I.- I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include -I/home/lytt/epics/base/include /compiler/gcc -I/home/lytt/epics/base/include/os/Linux -I/home/lytt/epics/base/include -c ../AsynDriverInterface.cc
> ../AsynDriverInterface.cc:41:10: Fatal error: asynDriver.h: No such file or directory
>   #include "asynDriver.h"
>     Among them “asyn” has been installed and the asyn installation path is configured in configure/RELEASE. How can I solve this? Thank you!

When you have built Asyn and properly configured it in your configure/RELEASE file the path to the Asyn module’s include subdirectory is visible as one of the -I parameters to the /usr/bin/g++ command. I don’t see that in your output above, so that either means that you have a typo in the path you used, or your Asyn module hasn’t been built properly and doesn’t have an include directory (the build system will not provide a -I option to a path which doesn’t exist).

I would run the commands below to check your installation, this is what they give on my system:

$ grep ASYN configure/RELEASE 
ASYN=/C2/ioc-modules/build/ASYN/4.40-C2-2+PH-014
$ ls /C2/ioc-modules/build/ASYN/4.40-C2-2+PH-014
asyn/		lib/	      testApp/		       testFtdiApp/
bin/		LICENSE       testArrayRingBufferApp/  testGpibApp/
configure/	Makefile      testAsynPortClientApp/   testGpibSerialApp/
db/		makeSupport/  testAsynPortDriverApp/   testIPServerApp/
dbd/		opi/	      testBroadcastApp/        testManagerApp/
documentation/	README.md     testConnectApp/	       testOutputCallbackApp/
include/	sumo-all      testEpicsApp/	       testOutputReadbackApp/
iocBoot/	templates/    testErrorsApp/	       testUsbtmcApp/



For CentOS8 you may also need to disable building the streamApp subdirectory because if you have configured Asyn with USE_TIRPC=YES the IOC built in that StreamDevice directory will fail to link (it also needs to be linked with the libtirpc.so library when Asyn uses it). Make this change to your StreamDevice installation to do that:

> diff --git a/Makefile b/Makefile
> index a70eb89..c9feee6 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -6,7 +6,9 @@ DIRS = configure
>  DIRS += src
>  src_DEPEND_DIRS = configure
>  
> -DIRS += streamApp
> +# Disabled, we don’t need this and Asyn’s setting
> +# USE_TIRPC=YES causes a link failure
> +#DIRS += streamApp
>  streamApp_DEPEND_DIRS = src
>  
>  include $(CONFIG)/RULES_TOP



- Andrew


-- 
Complexity comes for free, simplicity you have to work for.


References:
CentOS8--An error occurred when installing StreamDevice =?gb18030?b?u9jS5LvY7fg=?= via Tech-talk

Navigate by Date:
Prev: device support for Inficon SQM-160 or STM-2XM Laurenz Rettig via Tech-talk
Next: Re: Questions about arrays Ralph Lange 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  <20212022  2023  2024 
Navigate by Thread:
Prev: CentOS8--An error occurred when installing StreamDevice =?gb18030?b?u9jS5LvY7fg=?= via Tech-talk
Next: RE: CentOS8--An error occurred when installing StreamDevice 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  <20212022  2023  2024 
ANJ, 01 Apr 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·