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  <20182019  2020  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  <20182019  2020 
<== Date ==> <== Thread ==>

Subject: RE: Possible issue with epics-base 7 compilation
From: Mark Rivers <rivers@cars.uchicago.edu>
To: "'Gofron, Kazimierz'" <kgofron@bnl.gov>, 'Andrew Johnson' <anj@aps.anl.gov>, "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Fri, 23 Feb 2018 15:11:25 +0000
> However, stream-2-7-7 (master) is not compiling

Try the master branch of StreamDevice.  That is working for me with these fixes.  I don't recall where I got the fixes to StreamBuffer.cc and I am not sure if they are necessary.

corvette:~/devel/stream/StreamDevice>git diff master
diff --git a/Makefile b/Makefile
index 247c705..c2b3a09 100644
--- a/Makefile
+++ b/Makefile
@@ -19,6 +19,6 @@ else
   endif
 endif

-DIRS += streamApp
+#DIRS += streamApp

 include $(CONFIG)/RULES_DIRS
diff --git a/src/StreamBuffer.cc b/src/StreamBuffer.cc
index 3b34de3..6e25f7e 100644
--- a/src/StreamBuffer.cc
+++ b/src/StreamBuffer.cc
@@ -314,7 +314,7 @@ dump() const
     StreamBuffer result(256+cap*5);
     result.append("\033[0m");
     size_t i;
-    result.print("%"P"d,%"P"d,%"P"d:\033[37m", offs, len, cap);
+    result.print("%" P "d,%" P "d,%" P "d:\033[37m", offs, len, cap);
     for (i = 0; i < cap; i++)
     {
         if (i == offs) result.append("\033[34m[\033[0m");
diff --git a/src/StreamCore.cc b/src/StreamCore.cc
index 1943bf1..ca59b6a 100644
--- a/src/StreamCore.cc
+++ b/src/StreamCore.cc
@@ -997,7 +997,7 @@ readCallback(StreamIoStatus status,
             finishProtocol(ReplyTimeout);
             return 0;
         case StreamIoFault:
-            error("%s: I/O error after reading %"P"d byte%s: \"%s%s\"\n",
+            error("%s: I/O error after reading %" P "d byte%s: \"%s%s\"\n",
                 name(),
                 inputBuffer.length(), inputBuffer.length()==1 ? "" : "s",
                 inputBuffer.length() > 20 ? "..." : "",
@@ -1006,7 +1006,7 @@ readCallback(StreamIoStatus status,
             return 0;
     }
     inputBuffer.append(input, size);
-    debug("StreamCore::readCallback(%s) inputBuffer=\"%s\", size %"P"d\n",
+    debug("StreamCore::readCallback(%s) inputBuffer=\"%s\", size %" P "d\n",
         name(), inputBuffer.expand()(), inputBuffer.length());
     if (*activeCommand != in_cmd)
     {



Mark


> -----Original Message-----
> From: Gofron, Kazimierz [mailto:kgofron@bnl.gov]
> Sent: Friday, February 23, 2018 8:47 AM
> To: Mark Rivers <rivers@cars.uchicago.edu>; 'Andrew Johnson' <anj@aps.anl.gov>; tech-
> talk@aps.anl.gov
> Subject: RE: Possible issue with epics-base 7 compilation
> 
> I confirm, that when using make 4.2.1, I and am not seeing hanged 'cmd' session on
> Windows 7 Pro, or uncompleted compilations when using 'make -j' in Visual Studio
> Community Edition 2017.
> 
> Compiled:
> base-7.0.1
> synApps (packages required by AD)
> AreaDetector 3-2
> ===========
> However, stream-2-7-7 (master) is not compiling
> 
> perl -CSD C:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl  -m pcre_refcount.d -I. -
> I../O.Common -I. -I. -I.. -I../../include/compiler/msv
> c -I../../include/os/WIN32 -I../../include      -IC:/epics/synApps/support/asyn-4-33/include   -
> IC:/epics/synApps/support/calc-3-7/include
>  -IC:/epics/synApps/support/sscan-2-11-1/include -IC:/epics/base-
> 7.0.1/include/compiler/msvc -IC:/epics/base-7.0.1/include/os/WIN32 -IC:/epi
> cs/base-7.0.1/include        pcre_refcount.obj ../pcre_refcount.c
> perl -CSD C:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl  -m pcre_byte_order.d -I. -
> I../O.Common -I. -I. -I.. -I../../include/compiler/m
> svc -I../../include/os/WIN32 -I../../include      -IC:/epics/synApps/support/asyn-4-33/include
> -IC:/epics/synApps/support/calc-3-7/include
>    -IC:/epics/synApps/support/sscan-2-11-1/include -IC:/epics/base-
> 7.0.1/include/compiler/msvc -IC:/epics/base-7.0.1/include/os/WIN32 -IC:/e
> pics/base-7.0.1/include        pcre_byte_order.obj ../pcre_byte_order.c
> perl -CSD C:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl  -m pcre_ord2utf8.d -I. -
> I../O.Common -I. -I. -I.. -I../../include/compiler/msv
> c -I../../include/os/WIN32 -I../../include      -IC:/epics/synApps/support/asyn-4-33/include   -
> IC:/epics/synApps/support/calc-3-7/include
>  -IC:/epics/synApps/support/sscan-2-11-1/include -IC:/epics/base-
> 7.0.1/include/compiler/msvc -IC:/epics/base-7.0.1/include/os/WIN32 -IC:/epi
> cs/base-7.0.1/include        pcre_ord2utf8.obj ../pcre_ord2utf8.c
> perl -CSD C:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl  -m pcre_jit_compile.d -I. -
> I../O.Common -I. -I. -I.. -I../../include/compiler/
> msvc -I../../include/os/WIN32 -I../../include      -IC:/epics/synApps/support/asyn-4-33/include
> -IC:/epics/synApps/support/calc-3-7/includ
> e   -IC:/epics/synApps/support/sscan-2-11-1/include -IC:/epics/base-
> 7.0.1/include/compiler/msvc -IC:/epics/base-7.0.1/include/os/WIN32 -IC:/
> epics/base-7.0.1/include        pcre_jit_compile.obj ../pcre_jit_compile.c
> perl -CSD C:/epics/base-7.0.1/bin/windows-x64-static/mkmf.pl  -m pcre_chartables.d -I. -
> I../O.Common -I. -I. -I.. -I../../include/compiler/m
> svc -I../../include/os/WIN32 -I../../include      -IC:/epics/synApps/support/asyn-4-33/include
> -IC:/epics/synApps/support/calc-3-7/include
>    -IC:/epics/synApps/support/sscan-2-11-1/include -IC:/epics/base-
> 7.0.1/include/compiler/msvc -IC:/epics/base-7.0.1/include/os/WIN32 -IC:/e
> pics/base-7.0.1/include        pcre_chartables.obj ../pcre_chartables.c
> Installing generic include file ../../include/pcre.h
> mkdir ../../include
> cl           -DHAVE_MEMMOVE=1 -DNEWLINE=10 -
> DINT64_MAX="(0x7FFFFFFFFFFFLL)" -DLINK_SIZE=2 -
> DMAX_NAME_COUNT=10000 -DMAX_NAME_SIZE=32 -DMATCH_
> LIMIT=10000000 -DMATCH_LIMIT_RECURSION=MATCH_LIMIT -
> DPOSIX_MALLOC_THRESHOLD=10 -DPARENS_NEST_LIMIT=250 -
> DSUPPORT_PCRE8     -nologo -D__STDC_
> _=0 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE   -
> Ox -Oy-   -W3        -MT    -I. -I../O.Common -I. -I. -I.. -I../../include/com
> piler/msvc -I../../include/os/WIN32 -I../../include      -IC:/epics/synApps/support/asyn-4-
> 33/include   -IC:/epics/synApps/support/calc-3-7/
> include   -IC:/epics/synApps/support/sscan-2-11-1/include -IC:/epics/base-
> 7.0.1/include/compiler/msvc -IC:/epics/base-7.0.1/include/os/WIN32
>  -IC:/epics/base-7.0.1/include        -c ../pcre_chartables.c
> pcre_chartables.c
> ../pcre_chartables.c(1): error C2059: syntax error: '.'
> make[2]: *** [C:/epics/base-7.0.1/configure/RULES_BUILD:230: pcre_chartables.obj]
> Error 2
> make[2]: Leaving directory 'c:/epics/synApps/support/stream-2-7-7/pcre/O.windows-x64-
> static'
> make[1]: *** [C:/epics/base-7.0.1/configure/RULES_ARCHS:58: install.windows-x64-
> static] Error 2
> make[1]: Leaving directory 'c:/epics/synApps/support/stream-2-7-7/pcre'
> make: *** [configure/RULES_DIRS:88: pcre.install] Error 2
> 
> c:\epics\synApps\support\stream-2-7-7>
> 
> - Kaz
> 
> -----Original Message-----
> From: Mark Rivers [mailto:rivers@cars.uchicago.edu]
> Sent: Thursday, February 22, 2018 2:36 PM
> To: 'Andrew Johnson'; Gofron, Kazimierz; tech-talk@aps.anl.gov
> Subject: RE: Possible issue with epics-base 7 compilation
> 
> I mentioned this in another thread, but I respond here too.
> 
> Using this 4.2.1 version I can now do "make -j" on my Windows 7 machine with various
> versions of Visual Studio (2010, 2015, 2017) and I have not yet seen a problem.  With the
> previous 4.1 version it would always hang with make -j in the
> areaDetector/ADSupport/supportApp/hdf5Src directory.  Make -j8 would work OK.
> 
> I have now built all of base 7.0.1 and synApps (including asyn, seq, areaDetector) with
> make -sj with no problems.
> 
> Mark
> 
> 
> > -----Original Message-----
> > From: Andrew Johnson [mailto:anj@aps.anl.gov]
> > Sent: Tuesday, February 13, 2018 3:41 PM
> > To: Gofron, Kazimierz <kgofron@bnl.gov>; Mark Rivers
> > <rivers@cars.uchicago.edu>; tech-talk@aps.anl.gov
> > Subject: Re: Possible issue with epics-base 7 compilation
> >
> > Hi Guys,
> >
> > I don't know if an update will make any difference, but I just built a
> > copy of the latest GNU make 4.2.1 which you can download from
> >   https://epics.anl.gov/download/tools/make-4.2.1-win64.zip
> >
> > Please let us know if this helps.
> >
> > - Andrew
> >
> > On 02/12/2018 06:42 PM, Gofron, Kazimierz wrote:
> > > Hi Mark,
> > > Indeed it is make 4.1 from EPICS web page, that Andrew build.
> > > Kaz
> > > ________________________________________
> > > From: Mark Rivers [rivers@cars.uchicago.edu]
> > > Sent: Monday, February 12, 2018 7:36 PM
> > > To: Gofron, Kazimierz; tech-talk@aps.anl.gov
> > > Cc: engbretson@anl.gov
> > > Subject: RE: Possible issue with epics-base 7 compilation
> > >
> > > Hi Kaz,
> > >
> > > I don't think this is a new problem, and is not specific to EPICS 7.
> > > Are you using the
> > make 4.1 that Andrew built and put on the EPICS Web page?
> > >
> > > If I run "make -sj" with that version then it will occasionally get
> > > into a state when one
> > "make" process is using 100% of a core forever and it never completes.
> > This happens with 3.14.12.5, 3.15.5, and 7.0.1.1.
> > >
> > > I have never had a problem if I use "make -sj8" on my 8-core machine.
> > >
> > > Mark
> > >
> > >
> > > From: Gofron, Kazimierz [mailto:kgofron@bnl.gov]
> > > Sent: Monday, February 12, 2018 6:23 PM
> > > To: tech-talk@aps.anl.gov
> > > Cc: Mark Rivers <rivers@cars.uchicago.edu>; engbretson@anl.gov
> > > Subject: Possible issue with epics-base 7 compilation
> > >
> > > Hi,
> > >
> > > There is a possible threading issue when compiling epics-base 7
> > > using 'make -sj'  on 8
> > hyperthread system.
> > > Observed on System X 3250 M5 with 8 hyperthreads, running windows 7
> > > Professional,
> > Xeon E3-1230 v3, and Visual Studio 2017.
> > >
> > > make -sj never completes compilation make -sj4 completes compilation
> > >
> > > Compilation always successfully completes on Lenovo W550s laptop with 4
> hyperthreads.
> > >
> > > The two attached files show the two cases when compiling 'make' and
> > > 'make -sj' on the
> > System X 3250 M5 (8 hyperthreads).
> > >
> > > Kaz
> > >
> > >
> >
> > --
> > Arguing for surveillance because you have nothing to hide is no
> > different than making the claim, "I don't care about freedom of speech
> > because I have nothing to say." -- Edward Snowdon

References:
Possible issue with epics-base 7 compilation Gofron, Kazimierz
RE: Possible issue with epics-base 7 compilation Mark Rivers
RE: Possible issue with epics-base 7 compilation Gofron, Kazimierz
Re: Possible issue with epics-base 7 compilation Andrew Johnson
RE: Possible issue with epics-base 7 compilation Mark Rivers
RE: Possible issue with epics-base 7 compilation Gofron, Kazimierz

Navigate by Date:
Prev: RE: Asyn not automatically reconnecting Daykin, Evan
Next: Re: Asyn not automatically reconnecting Mark Rivers
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  <20182019  2020 
Navigate by Thread:
Prev: RE: Possible issue with epics-base 7 compilation Gofron, Kazimierz
Next: Other Access Security implementations? Ralph Lange
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  <20182019  2020 
ANJ, 23 Feb 2018 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·