EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024  Index 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: Problem building ezcaIDL on Windows
From: Mark Rivers via Core-talk <core-talk at aps.anl.gov>
To: "'Johnson, Andrew N.'" <anj at anl.gov>
Cc: EPICS core-talk <core-talk at aps.anl.gov>
Date: Fri, 11 Jun 2021 19:17:35 +0000

Hi Andrew,

 

If the Makefile contains these lines then it builds the DLL correctly on windows-x64-static.  dumpbin /exports shows the correct exported symbols.

 

SHARED_LIBRARIES=YES

LIBRARY_HOST = ezcaIDL

 

If the Makefile contains these lines then it builds the DLL, but the DLL does not export any symbols.

 

#SHARED_LIBRARIES=YES

#LIBRARY_HOST = ezcaIDL

LOADABLE_LIBRARY_HOST = ezcaIDL

 

H:\epics\extensions_new\src\ezcaIDL>dumpbin /exports ..\..\bin\windows-x64-static\ezcaIDL.dll

Microsoft (R) COFF/PE Dumper Version 14.00.24215.1

Copyright (C) Microsoft Corporation.  All rights reserved.

 

 

Dump of file ..\..\bin\windows-x64-static\ezcaIDL.dll

 

File Type: DLL

 

  Summary

 

       15000 .data

        1000 .gfids

        8000 .pdata

       2C000 .rdata

        2000 .reloc

       74000 .text

        1000 .tls

 

Am I doing something wrong?

 

Thanks,

Mark

 

 

From: Johnson, Andrew N. <anj at anl.gov>
Sent: Friday, June 11, 2021 1:18 PM
To: Mark Rivers <rivers at cars.uchicago.edu>
Cc: EPICS core-talk <core-talk at aps.anl.gov>
Subject: Re: Problem building ezcaIDL on Windows

 

Hi Mark,



On Jun 11, 2021, at 11:57 AM, Mark Rivers via Core-talk <core-talk at aps.anl.gov> wrote:


My problem is now completely solved.  The solution is not to build with the windows-x64 architecture, in spite of the fact the ezcaIDL is building a DLL.  One needs to use the windows-x64-static architecture, but specify SHARED_LIBRARIES=YES in the Makefile.  The resulting DLL is completely self-contained, no dependency on base, ezca, or EzscaScan.

 

You may be able to modify the Makefiles to have them build a LOADABLE_LIBRARY instead of a SHARED_LIBRARY since that’s what’s needed; on Windows that should still create a DLL even when SHARED_LIBRARIES=NO. That target type may not have existed in 2007 when the Makefile was last worked on.

 



I am going to make pull requests for ezca, EzcaScan, and ezcaIDL.  Their Makefiles date from before when there were separate Windows architectures for dynamic builds (windows-x64) and static builds (windows-x64-static).  The .def files are no longer needed, and I will fix compiler warnings.

 

There was a PR against ezca recently to convert it to build stand-alone instead of in an extensions tree, but the branch still needs a few modifications IMO and those three modules should probably all be converted together if it’s going to happen. Nobody is really managing the ezca extensions modules any more – I converted their CVS history to Git several years ago, but I don’t have any customers that I know of so have no incentive to do anything with them myself. Not sure whether BCDA are still building these or not.

 

- Andrew

 

-- 

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

 


Replies:
Re: Problem building ezcaIDL on Windows Johnson, Andrew N. via Core-talk
References:
Problem building ezcaIDL on Windows Mark Rivers via Core-talk
RE: Problem building ezcaIDL on Windows Mark Rivers via Core-talk
RE: Problem building ezcaIDL on Windows Mark Rivers via Core-talk
Re: Problem building ezcaIDL on Windows Michael Davidsaver via Core-talk
RE: Problem building ezcaIDL on Windows Mark Rivers via Core-talk
Re: Problem building ezcaIDL on Windows Johnson, Andrew N. via Core-talk

Navigate by Date:
Prev: Re: Problem building ezcaIDL on Windows Johnson, Andrew N. via Core-talk
Next: Re: Problem building ezcaIDL on Windows Johnson, Andrew N. via Core-talk
Index: 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: Re: Problem building ezcaIDL on Windows Johnson, Andrew N. via Core-talk
Next: Re: Problem building ezcaIDL on Windows Johnson, Andrew N. via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024 
ANJ, 11 Jun 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·