It looks like it is failing in serviceMain/src
The error is unresolved symbols involving pvaClient
/home/travis/build/epics-base/exampleCPP/linkRecord/lib/linux-x86_64/liblinkRecord.a(getLinkScalarRecord.o): In function `epics::example::linkRecord::GetLinkScalarRecord::clientProcess()':
/home/travis/build/epics-base/exampleCPP/linkRecord/src/O.linux-x86_64/../getLinkScalarRecord.cpp:138: undefined reference to `epics::pvaClient::PvaClient::get(std::string const&)'
Perhaps your src/Makefile needs to have pvaClient added like this:
EPICS_BASE_PVA_CORE_LIBS = pvDatabase pvAccess pvAccessCA pvData pvaClient Com
When Windows is building a DLL it wants to resolve all symbols, so you need to give it all required libraries. Linux will not give an error where Windows will.
Mark
-----Original Message-----
From: Marty Kraimer <mrkraimer at comcast.net>
Sent: Friday, April 16, 2021 1:33 PM
To: Mark Rivers <rivers at cars.uchicago.edu>
Cc: EPICS Tech-Talk <tech-talk at aps.anl.gov>
Subject: Re: WIN_32
On 4/16/21 1:18 PM, Mark Rivers wrote:
> Hi Marty,
>
> Is this an IOC application or some other type of application?
>
> If it is an IOC application then you typically don't need anything different from Linux, i.e.
>
> PROD_LIBS += $(EPICS_BASE_IOC_LIBS)
Both.
I have a pull request:
> https://github.com/epics-base/exampleCPP/pull/63
It fails on the windows builds.
It also fails on the RTEMS builds but I am trying to fix the windows builds first.
Marty
>
> Mark
>
>
>
> -----Original Message-----
> From: Tech-talk <tech-talk-bounces at aps.anl.gov> On Behalf Of Marty
> Kraimer via Tech-talk
> Sent: Friday, April 16, 2021 12:06 PM
> To: tech talk <tech-talk at aps.anl.gov>
> Subject: WIN_32
>
> What is the best way to make applications build for windows.
> I see:
>> grep -r "WIN32 +" pvDataCPP normativeTypesCPP pvAccessCPP
>> pvDataCPP/configure/CONFIG_SITE:USR_CPPFLAGS_WIN32 += -DNOMINMAX
>> normativeTypesCPP/configure/CONFIG_SITE:USR_CPPFLAGS_WIN32 +=
>> -DNOMINMAX
>> pvAccessCPP/testApp/Makefile:PROD_SYS_LIBS_WIN32 += netapi32 ws2_32
>> pvAccessCPP/examples/Makefile:PROD_SYS_LIBS_WIN32 += netapi32 ws2_32
>> pvAccessCPP/configure/CONFIG_PVACCESS_MODULE:PROD_SYS_LIBS_WIN32 +=
>> netapi32
>> pvAccessCPP/configure/CONFIG_SITE:USR_CPPFLAGS_WIN32 += -DNOMINMAX
>> pvAccessCPP/src/ca/Makefile:LIB_SYS_LIBS_WIN32 += netapi32 ws2_32
>> pvAccessCPP/src/Makefile:LIB_SYS_LIBS_WIN32 += netapi32 ws2_32
>> pvAccessCPP/pvtoolsSrc/Makefile:PROD_SYS_LIBS_WIN32 += netapi32
>> ws2_32
>> pvAccessCPP/testCa/Makefile:PROD_SYS_LIBS_WIN32 += netapi32 ws2_32
> Is what pvDataCPP and normativeTypesCPP are doing sufficent?
>
> Marty
>
- Replies:
- Re: WIN_32 Marty Kraimer via Tech-talk
- References:
- WIN_32 Marty Kraimer via Tech-talk
- RE: WIN_32 Mark Rivers via Tech-talk
- Re: WIN_32 Marty Kraimer via Tech-talk
- Navigate by Date:
- Prev:
RE: Python Script call from Button press, module not found Manoussakis, Adamandios via Tech-talk
- Next:
Two versions of asyn are complied into an IOC application Hu, Yong 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
<2021>
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: WIN_32 Marty Kraimer via Tech-talk
- Next:
Re: WIN_32 Marty Kraimer 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
<2021>
2022
2023
2024
|