Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022 
<== Date ==> <== Thread ==>

Subject: Re: EPICS base 3.15.0.2
From: Andrew Johnson <anj@aps.anl.gov>
To: "Heesterman, Peter J" <Peter.Heesterman@ccfe.ac.uk>
Cc: EPICS core-talk <core-talk@aps.anl.gov>, rivers@cars.uchicago.edu
Date: Thu, 30 Oct 2014 17:38:50 -0500
Hi Peter,

On 10/29/2014 12:00 PM, Heesterman, Peter J wrote:
> 1. I was unable to makefile build from scratch, with either release or
> debug build (make clean uninstall, make).
> 
>     See attached (the debug build fails sooner than the release build).
> 
>     This was for a fairly trivial reason, files which exist in the
> download (e.g. flex.skel.static) hadn’t been copied into the relevant
> install directory.

That appears to be a dependency issue, the flex.skel.static target needs
to have been installed before we attempt to run the e_flex executable
that uses it. I haven't come across this not working before, but it's
not obvious that there is an explicit dependency anywhere so we probably
need one. Please try applying the attached patch which I think should
fix that specific problem, I'll commit the change if it works for you.
Were there any other places you came across like that with other files
being used before they had been installed?

>     My VS project(s) are able to build all the code without problem. In
> order to complete the release makefile build from scratch, I was able to:
> 
> make clean uninstall, VS build for _DEBUG which copies the files, make.

Dependency issues are pretty fickle, they can appear and disappear
seemingly at random. Parallel builds (make -j) are good for picking them
up, but the number of CPUs you have and the speed of your disk can both
be major factors in when they appear.

> 2. You have removed a definition of epicsBoolean in epicsTypes.h.
> 
>     Presumably, you wish to deprecate use of this type; reasonable given
> that bool exists in the C99 standard and is presumably implemented on
> all platforms.
> 
>     But epicsBoolean is used in some modules, notably Asyn.

Ok, I have added it back to epicsTypes.h again.  We don't actually have
C99 support available on all our target OSs, but yes I would prefer to
get rid of epicsBoolean, epicsTrue and epicsFalse which are really not
necessary IMHO.

> 3. Another issue: you had removed include "menuGlobal.dbd" from base.dbd.
> 
> It’s needed. For example, I was seeking to run testAsynPortDriver, which
> had errors (see attached).

The menuGlobal.dbd file is now generated by the src/ioc/db/Makefile from
the list of files added to the menuGlobal_DBD variable in that file. It
should be built inside the src/ioc/db/O.Common directory of Base and
installed from there.

Your TestAsynPortDriver.log file shows that you're running the program
in the wrong place; you need to cd to the iocBoot/ioctestAsynPortDriver
directory first since the commands in the st.cmd file use relative paths
that assume that's where it starts from.


> As a separate issue, the string of the error line:
> 
> Error: syntax error
>     at or before "" in file "../../dbd/testAsynPortDriver.dbd" line 234
> 
> isn’t correctly terminated.
> It looks OK in a release build, but in a debug build it’s padded with
> gibberish.

Can you send me an example of the gibberish in context, I can't
replicate that issue here or see where it might be coming from.

Thanks,

- Andrew

-- 
People everywhere confuse what they read in newspapers with news.
-- A. J. Liebling
=== modified file 'src/libCom/flex/Makefile'
--- src/libCom/flex/Makefile	2011-09-15 19:05:05 +0000
+++ src/libCom/flex/Makefile	2014-10-30 20:35:41 +0000
@@ -13,7 +13,7 @@
 
 parse_YACCOPT = -l -d
 
-SKELETON_FILE = include/flex.skel.static
+SKELETON_FILE = flex.skel.static
 
 parse_CPPFLAGS = -DDEFAULT_SKELETON_FILE=$(SKELETON_FILE)
 

=== modified file 'src/libCom/flex/RULES'
--- src/libCom/flex/RULES	2012-07-18 20:35:32 +0000
+++ src/libCom/flex/RULES	2014-10-30 20:27:50 +0000
@@ -10,4 +10,4 @@
 # This is a Makefile fragment, see src/libCom/Makefile.
 
 # Ensure that the lexer is built before it is needed
-parse.c: $(TOOLS)/antelope$(HOSTEXE)
+parse.c: $(TOOLS)/antelope$(HOSTEXE) $(INSTALL_INCLUDE)/$(SKELETON_FILE)


Replies:
RE: EPICS base 3.15.0.2 Heesterman, Peter J

Navigate by Date:
Prev: Jenkins build is back to stable : epics-base-3.15 #123 APS Jenkins
Next: RE: EPICS base 3.15.0.2 Heesterman, Peter J
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022 
Navigate by Thread:
Prev: Re: EPICS Base Library sonames Johnson, Andrew N.
Next: RE: EPICS base 3.15.0.2 Heesterman, Peter J
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022 
ANJ, 31 Oct 2014 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·