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 20:03:21 +0000

The names are already decorated with epicsShareFunc and epicsShareAPI.

 

It exports the symbols OK for these cases:

-          windows-x64 architecture

-          windows-x64-static architecture if the Makefile contains SHARED_LIBRARIES=YES, whether I use LIBRARY_HOST or LOADABLE_LIBRARY_HOST.

 

Mark

 

 

From: Johnson, Andrew N. <anj at anl.gov>
Sent: Friday, June 11, 2021 2:33 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 2:17 PM, Mark Rivers <rivers at cars.uchicago.edu> wrote:

 

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

 

My guess is that if you restored the .def file(s) that might fix it – don't they provide the linker with a list of symbols to export? The other solution would be to decorate all the symbols that need to be exported inside the source code, but that’s going to take more work.

 

- Andrew

 

 

-- 

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

 


Replies:
Re: Problem building ezcaIDL on Windows Ralph Lange 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
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 Ralph Lange 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 Ralph Lange 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, 12 Jun 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·